Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 怎么说;“任何字符”;在正则表达式中?_Regex - Fatal编程技术网

Regex 怎么说;“任何字符”;在正则表达式中?

Regex 怎么说;“任何字符”;在正则表达式中?,regex,Regex,我想搜索一条以a开头,以z结尾的线。在两者之间可以出现任意数量的任意字符。我怎样才能写出这个表达式呢? (我不想明确提及任何数字、任何特殊字符、任何字母) 我不想做^[0-9,a-z,a-z,列出所有特殊字符]*$之类的事情 ^a.*z$ 如果要将其从“任意数量(包括零个)字符”更改为“一个或多个字符”,请将*更改为+。如何: ^a.*z$ 是与任何内容匹配的正则表达式元字符 *是一个贪婪的修饰符,它将前一项重复0次或更多次,首先尝试最大数量的匹配,然后进行较小的排列,直到前一项完全无法匹配

我想搜索一条以a开头,以z结尾的线。在两者之间可以出现任意数量的任意字符。我怎样才能写出这个表达式呢? (我不想明确提及任何数字、任何特殊字符、任何字母) 我不想做^[0-9,a-z,a-z,列出所有特殊字符]*$之类的事情

^a.*z$
如果要将其从“任意数量(包括零个)字符”更改为“一个或多个字符”,请将*更改为+。

如何:

^a.*z$
是与任何内容匹配的正则表达式元字符


*
是一个贪婪的修饰符,它将前一项重复0次或更多次,首先尝试最大数量的匹配,然后进行较小的排列,直到前一项完全无法匹配,这实际上仍然会使整个正则表达式匹配

否,在多行模式下(
m
标志),新行不与
匹配,在单行模式下(
s
标志),新行与
匹配。多行模式使
^
$
匹配任何行的开始和结束,而不是整个字符串的开始和结束。@Adrian啊,是的!对不起!我记不清哪一个是哪个(
s
&
m
)。谢谢你的更正,我已经编辑了我的答案来反映这一点。好的。但这又给我提出了一个问题。如何在表达式中使用s或m?@Vijay:这取决于正则表达式引擎。有时需要使用特殊选项编译正则表达式,有时在正则表达式中添加修饰符,有时在正则表达式分隔符后添加修饰符-正如Fred Nurk所评论的(以及正则表达式常见问题解答所说的),您需要告诉我们您使用的正则表达式引擎。@Vijay Javascript的正则表达式引擎不支持
s
标志,只有
m
g
和'i'标志。您可以使用像
[\s\s]
这样的字符类,它同时匹配空白字符和非空白字符。您用于正则表达式的确切风格(即实现语言)将帮助我们给出更详细的答案。