Javascript 为什么我必须在正则表达式中对回文使用replace?
我在FreeCodeCamp做了一些挑战,我在一个基本的挑战中迷失了方向 要求检查回文。在解决方案中,我必须执行以下操作:Javascript 为什么我必须在正则表达式中对回文使用replace?,javascript,regex,Javascript,Regex,我在FreeCodeCamp做了一些挑战,我在一个基本的挑战中迷失了方向 要求检查回文。在解决方案中,我必须执行以下操作: str = str.replace(/[^a-zA-Z]/g, '').toLowerCase(); 但是我不明白为什么我必须使用replace方法和正则表达式 任何人都可以帮我吗?请输入以下代码: str.replace(/[^a-zA-Z]/g, '').toLowerCase() 您将删除所有不是A-Z和A-Z字母的字符,然后将替换的字符串设置为小写。字符类开头的
str = str.replace(/[^a-zA-Z]/g, '').toLowerCase();
但是我不明白为什么我必须使用replace方法和正则表达式
任何人都可以帮我吗?请输入以下代码:
str.replace(/[^a-zA-Z]/g, '').toLowerCase()
您将删除所有不是A-Z和A-Z字母的字符,然后将替换的字符串设置为小写。字符类开头的^
。]
与[^…]
类似,表示而不是此字符。因此,[a-z]
表示匹配a到z之间的字母,而[^a-z]
表示匹配除a到z之外的任何字母
有很多在线正则表达式工具可以解释这些模式。从Regex101可以看到:
/[^a-zA-Z]/g
[^a-zA-Z] match a single character not present in the list below
a-z a single character in the range between a and z (case sensitive)
A-Z a single character in the range between A and Z (case sensitive)
g modifier: global. All matches (don't return on first match)
你的问题应该指出你在使用哪种语言。regex部分相当通用(也相当简单),但我并不马上认识这种特殊的语言;任何一个熟练使用它的人都可以提供更好的解释,以及更好的非正则表达式方法来规范化字符串。