什么是正确的正则表达式(我还在学习)从字符串(人名)中删除所有不是字母的内容?
Take:" Joe Bloggs"。你会如何将其转变为(即匹配)" JoeBloggs"使用正则表达式? (没有编程语言处理)。
Take" Joe G. Bloggs"," Mary O' Connor"," F. Scott Fitzgerald"," Mark O-Hara"和" J.P。摩根"所有作为字符串的例子只应包含字母(即JoeGBloggs"," MaryOConnor"," FScottFitzgerald"," MarkOHara"" JPMorgan&# 34。)
可以使用正则表达式将生成的仅字母字符串转换为小写字母(" joebloggs"," maryoconnor"," jpmorgan")
我基本上试图将名称视为用户名。
谢谢。
答案 0 :(得分:2)
是和否。正则表达式是此过程的一小部分。虽然您当然可以使用正则表达式,并将其应用于“Joe Bloggs”并使其与空间或“Joe”和“Bloggs”相匹配,但还需要进一步的功能才能对您的匹配做一些事情。对于简单的正则表达式,大多数实现都有内置的“全部替换”(即使是单词?)。此外,转换字母案例不是正则表达式的一部分。您可以以不区分大小写的方式进行匹配,但同样,正则表达式不是转换工具。
答案 1 :(得分:0)
/\W/g
您可以使用转义资本W
或\W
匹配所有非字字符(小写\w
是字词)。对于正则表达式的javascript风格,这可以像你描述的那样工作:
"J.P. Morgan".replace(/\W/g, ''); // results in "JPMorgan"