2015-02-27 3 views
-2

Какое правильное регулярное выражение (я все еще учусь), чтобы вырезать все из строк (имена людей), которые не являются буквой?Регулярное выражение для пробелов и символов?

  1. Take: "Joe Bloggs". Как бы вы включили это (т. Е. Совпадение) с JoeBloggs с помощью регулярного выражения? (Нет обработки языка программирования).

  2. Возьмите «Joe G. Bloggs», «Mary O'Connor», «F. Scott Fitzgerald», «Mark O-Hara» и «JP Morgan» все как примеры строк, которые должны содержать только буквы (т.е. JoeGBloggs " "maryOConnor", "FScottFitzgerald", "MarkOHara" и "JPMorgan").

  3. Может результирующие, письма-только строки также быть преобразованы в нижний регистр ("joebloggs", "maryoconnor"," JPMorgan «) с использованием регулярных выражений?

Я в основном пытаюсь увидеть имена, как имена пользователей.

Спасибо.

ответ

0
/\W/g 

Вы можете соответствовать всем символам без слов с помощью беглого капитала W или \W (в нижнем регистре \w является символами слова). Для javascript-аромата регулярного выражения это будет работать, как вы описали:

"J.P. Morgan".replace(/\W/g, ''); // results in "JPMorgan" 
+0

Спасибо за отзыв. –

2

Да и нет. Regex - небольшая часть этого процесса. В то время как вы, безусловно, можете взять регулярное выражение и применить его к «Joe Bloggs» и сделать его совпадающим либо с пространством, либо с обоими «Joe» и «Bloggs», вам потребуется дополнительная функциональность, чтобы что-то сделать с вашими совпадениями. В большинстве реализаций есть встроенное «заменить все» для простых регулярных выражений (это даже слово?). Кроме того, преобразование буквенного случая не является частью регулярного выражения. Вы можете сопоставлять регистр без учета регистра, но опять же, регулярное выражение не является инструментом преобразования.

Смежные вопросы