Регулярное выражение, каждый не буквенно-цифровой символ, кроме пробела или двоеточия



Я не могу понять, как это сделать в любом месте. Какая-нибудь помощь?



в основном я пытаюсь сопоставить все виды разных символов, таких как амперсанды, точки с запятой, знаки доллара и т. д.

457   8  

8 ответов:

[^a-zA-Z\d\s:]
  • \d-числовой класс
  • \s-пробел
  • a-zA-Z-соответствует всем буквам
  • ^ - отрицает их все-так что вы получаете - не числовые символы, не пробелы и не двоеточия

Это должно сделать это: [^a-zA-Z\d\s:] Надеюсь, это поможет!

попробуй такое

[^a-zA-Z0-9 :]

в JS пример:

"!@#$%* ABC def:123".replace(/[^a-zA-Z0-9 :]/g, ".")

посмотреть онлайн пример:

http://jsfiddle.net/vhMy8/

если вы хотите лечить акцентированные латинские символы (например. à Ñ) как обычные буквы (т. е. избегайте сопоставления их тоже), вам также нужно будет включить соответствующий диапазон Юникода (\u00C0 - \ u00FF) в вашем регулярном выражении, так что это будет выглядеть так:

/[^a-zA-Z\d\s:\u00C0-\u00FF]/g
  • ^ отрицает то, что следует
  • a-zA-Z соответствует верхним и нижним буквам
  • \d матчи цифр
  • \s соответствует пробелу (если вы только хотите сопоставьте пробелы, замените это пробелом)
  • : соответствует
  • \u00C0-\u00FF соответствует диапазону Юникода для акцентированных латинских символов.

nb. Сопоставление диапазона Unicode может не работать для всех механизмов регулярных выражений, но вышеизложенное, безусловно, работает в Javascript (как показано в эта ручка на Codepen).

Nb2 успешно. Если вы не беспокоитесь о совпадении подчеркиваний, вы можете заменить a-zA-Z\d С \w, который соответствует буквами, цифры и подчеркивания.

Если вы имеете в виду "не буквенно-цифровые символы", попробуйте использовать это

var reg =/[^a-zA-Z0-9]/g         //[^abc] 

нет буквенно-цифровых, пробелов или'_'.

var reg = /[^\w\s)]|[_]/g;

попробуйте добавить этот

^[^a-zA-Z\d\s:]*$

это сработало для меня... :)

"0_0 (: /-\ :) 0-0".replace(/[^a-zA-Z0-9 :]/g,"")

работал на меня. Однако,

replace(/[^a-zA-Z/d :]/g,"")

не работал на меня.

Comments

    Ничего не найдено.