如何编写正则表达式来获取任何输入字符串并仅输出字母?
输入:
'This is a sentence. &)$&(@#1232&()$123!!ª•º–ª§∞•¶§¢• This is an example of the input string. '
输出:
'thisisasentencethisisanexampleoftheinputstring'
答案 0 :(得分:2)
您可以删除所有非字母:
var input = 'This is a sentence. &)$&(@#1232&()$123!!ª•º–ª§∞•¶§¢• This is an example of the input string. ';
var output = input.replace(/[^a-zA-Z]/g, "");
如果您希望输出全部为小写,请将.toLowerCase()
添加到末尾,如下所示:
var output = input.replace(/[^a-zA-Z]/g, "").toLowerCase();
作为解释,此正则表达式匹配所有不是a-z
或A-Z
的字符。正则表达式末尾的g
标志告诉它在整个字符串中替换所有字符串(而不仅仅是它找到的第一个匹配项)。并且,""
告诉它用空字符串替换每个匹配(有效地删除所有匹配字符)。
答案 1 :(得分:2)
var text = 'This is a sentence. &)$&(@#1232&()$123!!ª•º–ª§∞•¶§¢• This is an example of the input string. ';
text.replace(/[^a-z]/ig, '');