这是什么意思?这是什么javascript正则表达式?
name = name. replace(/([A-Z]) /g, " -$1");
它是js。
修正我的意思name = name.replace(/([A-Z]) /g, "-$1");
这是什么意思?这是什么javascript正则表达式?
name = name. replace(/([A-Z]) /g, " -$1");
它是js。
修正我的意思name = name.replace(/([A-Z]) /g, "-$1");
这意味着:
以字符串“名称”,并查找每个大写字母后面有一个空格。当您发现一个事件时,请用连字符替换它,然后替换为字母。一旦你完成了所有的事件,把这个新的字符串分配回“name”变量。
例如,如果“name”是AB CD
之前执行这条线,“名称”,将执行该行之后是A-BCD
。
非常简要地说,该装置[A-Z]
匹配任何大写字母,则/g
位手段做到这一点全局(整个输入字符串),并且-$1
位意味着替换每个匹配组与X
-X
。 $1
引用第一个参数括号中的位。
所以,如果输入是“HE LLO”,你会得到“H-E LLO”。如果输入是“He LL o”,你应该得到“He L-L o”。
我建议你阅读正则表达式,因为它们可能非常复杂。
你是什么意思? $ 1引用第一个参数中的括号中的位。 – steve 2010-11-08 16:08:09
'$ 1'就是所谓的“反向引用”。每对括号定义了一个后向引用,后面可以用'$ n'语法来引用。第一个反向引用是$ 1,第二个是$ 2,等等。所以表达式的“替换”部分指的是正则表达式中的第一个反向引用。 – 2010-11-08 16:11:02
(A-Z)
之后是空格。所以它只能匹配大写字母后跟一个空格。这些被替换为“ - ”和原始字符(反向引用)。因此,对于字符串“你好我的朋友”,结果将是HELL -OM -YFriends
。 /g
意味着全球,所以更换所有的出现。
试图在perl的:
$var = "HELLO MY Friends";
$var =´ s/([A-Z])/-$1/g;
print $var . "\n";
什么语言是这个吗? – FrustratedWithFormsDesigner 2010-11-08 16:00:12
是JavaScript吗?正则表达式的格式可能会有所不同,具体取决于您所使用的编程语言。 – zzzzBov 2010-11-08 16:02:17