正则表达式解释^.*$

Mar*_*res 18 regex

当我使用这段代码时:

'DTH' + @fileDate + '^.*$' 
Run Code Online (Sandbox Code Playgroud)

我明白了 DTH201510080900.xlsx

怎么^.*$办?这给了我0900的时间吗?

zed*_*xus 54

  • ^ 匹配字符串的第一个字符之前的位置
  • $ 匹配字符串的最后一个字符后面的位置
  • .匹配单个字符.除了换行符之外,它的性质无关紧要
  • * 匹配前一个匹配零次或多次

因此,^.*$意味着 - 从头到尾匹配任何出现零次或多次的角色.基本上,这意味着 - 匹配从字符串的开头到结尾的所有内容.这种正则表达式模式不是很有用.

让我们采用可能有点有用的正则表达式模式.比方说,我有两个字符串The bat of Matt JonesMatthew's last name is Jones.模式^Matt.*Jones$将匹配Matthew's last name is Jones.为什么?模式说 - 字符串应该以Matt开头并以Jones结尾,并且它们之间可以有零个或多个字符(任何字符).

您可以随意使用https://regex101.com/等在线工具来测试正则表达式模式和字符串.


mak*_*iuk 19

"^.*$"
Run Code Online (Sandbox Code Playgroud)

字面上只是意味着选择一切

"^"  // anchors to the beginning of the line
".*" // zero or more of any character
"$"  // anchors to end of line
Run Code Online (Sandbox Code Playgroud)