Javascript 什么是//;/和/^+;/表示?
我最近发现了这样一种说法:Javascript 什么是//;/和/^+;/表示?,javascript,regex,Javascript,Regex,我最近发现了这样一种说法: var cookies = document.cookie.split(/;/); 及 在第一个语句中,//在split的参数中表示 在第二条语句中,replace参数中的/^+/表示什么?这些是 Javascript 在这个特定的例子中: .split(/;/)使用作为拆分字符 .replace(/^+/,“”)删除(”)任何(+)前导(^)空格() 在这两个示例中,/环绕或分隔正则表达式(或“regex”),通知Javascript您正在提供一个regex 点击
var cookies = document.cookie.split(/;/);
及
在第一个语句中,//代码>在split的参数中表示
在第二条语句中,replace参数中的/^+/
表示什么?这些是
Javascript
在这个特定的例子中:
.split(/;/)
使用代码>作为拆分字符李>
.replace(/^+/,“”)
删除(”
)任何(+
)前导(^
)空格(
)
在这两个示例中,/
环绕或分隔正则表达式(或“regex”),通知Javascript您正在提供一个regex
点击上面提供的链接了解更多信息;正则表达式的范围很广,值得学习。我认为/^+//意味着:一个或多个no-“”字符语法表示正则表达式(也称为“正则表达式”)
Regex是一种用于搜索和替换字符串的语法
您给出的第一个示例是//代码>。这是一个非常简单的正则表达式,它只搜索字符串中的分号,然后根据结果将其拆分为一个数组。因为它没有使用任何特殊的正则表达式功能,所以它可以很容易地表示为一个简单的字符串,即split(;”)
(正如在另一个示例中使用等号所做的那样),而不会对结果产生任何影响
第二个例子是/^+/
。这更为复杂,需要了解正则表达式的工作原理。简而言之,它所做的是搜索字符串上的前导空格,然后删除它们
要了解有关regex的更多信息,我建议将此网站作为一个良好的起点:
希望有帮助。斜线分隔正则表达式,就像引号分隔字符串一样
/;/匹配分号。具体而言:
var cookies = document.cookie.split(/;/);
意味着我们将document.cookie字符串拆分为一个数组,在有分号的地方拆分它。所以它需要像“a;b;c”这样的词,然后把它变成[“a”,“b”,“c”]
只需去掉所有前导空格。它变成
" lastvisit"
进入
插入符号^表示“行的开头”,后面跟空格,+表示尽可能多地重复空格一次或多次。^表示不仅在范围[]
的上下文中,如果它位于正则表达式的开头,还表示行的开头为什么我不能只写.split(;”)
@grassPro:你可以。有什么不同/
do then?@grassPro:从功能上讲,在这个简单的例子中,什么都没有。正如我所说,斜杠分隔正则表达式,就像字符串用引号分隔一样。e、 g./regex/vs.“string”@grassPro:我两小时前就告诉过你了。
pair[0].replace(/^ +/, "")
" lastvisit"
"lastvisit"