我正在使用一些Action Script文件,我发现了这个:
var pattern:RegExp = /.*\//
var results:Array = pattern.exec(cardImageService.url);
我知道这是一个正则表达式,而exec()
正在我的字符串中寻找我的模式。但是我该如何理解这种模式呢?
谢谢!
答案 0 :(得分:3)
/ - Regex delimiter
. - Meta-character to match any character except newline.
* - Quantifier for zero or more
\/ - A literal /. Since / is used as a delimiter, to match a literal / we
need to escape it.
/ - Regex delimiter
答案 1 :(得分:2)
模式
.*\/
装置
.* # any character (except \n), zero or more times
\/ # the forward slash "/"
正斜杠必须被转义,因为当写为正则表达式文字时(就像你的情况一样),正斜杠已被用于界定正则表达式。
在其他情况下,当正则表达式以字符串形式呈现时,它看起来像".*/"
并且意思相同。
实际上,这会匹配最后一个正斜杠的路径(包括)。
/some/very/long/path/with.a.file -------match---------
答案 2 :(得分:1)
它匹配任意数量的字符(零个或多个),以/
字符结尾。通常,这将从字符串开始直到(并包括)字符串中的最后一个正斜杠来抓取字符串中的所有内容。
答案 3 :(得分:0)
/
是RegEx分隔符
.*
选择0个或多个字符(尽可能多),不包括换行符
\/
是一个转义符后跟/
,以便它匹配/
字符而不结束正则表达式
/
是另一个RegEx分隔符
此正则表达式将搜索的是任意数量的字符,后跟/
个字符。
答案 4 :(得分:0)
.*
表示查找任何内容,任意次数(0到无限),\/
表示找到斜杠,\
是转义字符。本质上,正则表达式几乎匹配任何包含/的行。