RegExp буквенно-цифровая строка + специальные буквы - PullRequest
1 голос
/ 08 июля 2010

Первый вопрос: я хочу заменить все символы, кроме буквенно-цифровых и специальных букв. Например, от somestringğüş iöç123456!@#$%^&*()_+ до somestringğüş iöç123456

Второй: например, от some---example--long-string до some-example-long-string

Я действительно не знаю регулярное выражение, поэтому мне нужно 2 простых строки регулярного выражения. Спасибо

Ответы [ 2 ]

3 голосов
/ 08 июля 2010

Первый. Соответствует любому символу, который не является буквенно-цифровым, пробельным или не-ascii, и заменяет их пустой строкой.

str.replace(/[^a-z0-9\s\x80-\uFFFF]+/gi, '');

Не существует юникод-классовЯ могу использовать, поэтому я либо включаю все символы Юникода, либо перечисляю те, которые не являются буквами, цифрами или пробелами.

Секунда. Соответствует любой последовательности из двух или более тирезаменяет их одним штрихом.

str.replace(/-{2,}/g, '-');
3 голосов
/ 08 июля 2010
 /* 1. */   return x.replace(/[!@#$%^&*()_+]/g, '');
 /* 2. */   return x.replace(/-{2,}/g, '-');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...