空正则表达式匹配任何字符串

会计师

我试图找到一个匹配任何字符串的正则表达式!一些搜索后,我发现几乎所有的答案说,[\s\S]为表示将匹配任何字符串,在这里.*如说这里

但是在使用 PHP 时,preg_match我发现一个空的正则表达式匹配任何字符串!

if(preg_match("//u", "")) echo "empty string matchs\n";
else echo "empty string does not match\n";

if(preg_match("//u", "abc")) echo "abc matchs\n";
else echo "abc does not match\n";

if(preg_match("//u", "\n")) echo "new line matchs\n";
else echo "new line does not match\n";

if(preg_match("//u", "/")) echo "/ matchs\n";
else echo "/ does not match\n";

exit;

这将输出

empty string matchs
abc matchs
new line matchs
/ matchs

现场演示 ( https://eval.in/845001 )

我可以安全地使用这个空的正则表达式来匹配任何东西吗?一个空的正则表达式是什么意思?

如果你问为什么我需要一个匹配任何东西的正则表达式,那是因为我使用的函数需要一个正则表达式参数作为它的字符串验证功能的一部分,我希望它接受任何东西。

泡泡

空的正则表达式模式//匹配字符串中字符之间的开始、结束和任何位置。在 eval.in 中查看此演示,preg_match_all('//', "foo", $out);其中返回 4 个空匹配项:

Array[0] => [1] => [2] => [3] => )

由于preg_match将只检查它应该是蛮好用的空模式的第一场比赛。但是通常我可能更喜欢/^/哪个匹配每个字符串具有的字符串的开头

[\s\S]短裤为空格与在非空格一起字符类)指刚任何字符,通常用于相关线断也匹配换行符其中不存在可用于做出标志匹配换行符。通常与不支持sflag 的JS 正则表达式一起使用类似的是[\D\d](数字和非数字),[\w\W](单词字符和非单词字符)。JS 正则表达式也可能是[^]一个否定的空字符类,用于“非空”。

要使用/[\s\S]/或 其他不带量词之一,至少需要一个字符。

进一步提到,在您的模式中,您使用uunicode 正则表达式标志。可能没有理由将此标志与空模式一起使用或仅检查字符串的开头。对 pcre unicode regex感兴趣的可能是以下转义序列。

  • \X匹配一个 unicode 字素。类似于u-mode 中的点(但不是换行符)。
  • \C匹配一个数据单元(类似于u在 unicode 输入上使用不带标志的点)。

好吧,我真的不明白为什么需要一个模式来匹配任何字符串,而是为了兴趣而写的:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

匹配任何字符串正则表达式

来自分类Dev

匹配任何字符串正则表达式

来自分类Dev

正则表达式子字符串在字符串的任何位置都不匹配

来自分类Dev

正则表达式匹配字符串的固定字符数以外的任何内容?

来自分类Dev

匹配任何字符串的正则表达式,最多可达“ /” Javascript

来自分类Dev

如果列表中的任何字符串与正则表达式匹配

来自分类Dev

正则表达式:尝试多次匹配字符串中任何位置的前缀

来自分类Dev

匹配任何单词顺序正则表达式中的字符串

来自分类Dev

正则表达式匹配除结尾字符串以外的任何内容

来自分类Dev

正则表达式匹配包含模式2.4.2的任何字符串

来自分类Dev

正则表达式可匹配除某些特定字符串以外的任何内容

来自分类Dev

正则表达式匹配地址中的任何字符串组

来自分类Dev

匹配任何字符串的正则表达式,最多可达“ /” Javascript

来自分类Dev

如何匹配正则表达式中组合的任何数字或字符串?

来自分类Dev

正则表达式以匹配引号之间的任何字符串

来自分类Dev

Java 正则表达式。匹配任何前面没有给定字符串的“值”

来自分类Dev

使用正则表达式匹配字符串?

来自分类Dev

Java正则表达式匹配字符串

来自分类Dev

返回匹配正则表达式的字符串

来自分类Dev

匹配不带正则表达式的字符串

来自分类Dev

正则表达式以匹配Java字符串

来自分类Dev

Vim:匹配字符串的正则表达式

来自分类Dev

正则表达式匹配空字符串?

来自分类Dev

正则表达式不匹配字符串

来自分类Dev

与正则表达式匹配的Java字符串

来自分类Dev

正则表达式匹配特定字符串

来自分类Dev

正则表达式-匹配字符串模式

来自分类Dev

正则表达式与字符串不匹配

来自分类Dev

字符串与正则表达式不匹配

Related 相关文章

  1. 1

    匹配任何字符串正则表达式

  2. 2

    匹配任何字符串正则表达式

  3. 3

    正则表达式子字符串在字符串的任何位置都不匹配

  4. 4

    正则表达式匹配字符串的固定字符数以外的任何内容?

  5. 5

    匹配任何字符串的正则表达式,最多可达“ /” Javascript

  6. 6

    如果列表中的任何字符串与正则表达式匹配

  7. 7

    正则表达式:尝试多次匹配字符串中任何位置的前缀

  8. 8

    匹配任何单词顺序正则表达式中的字符串

  9. 9

    正则表达式匹配除结尾字符串以外的任何内容

  10. 10

    正则表达式匹配包含模式2.4.2的任何字符串

  11. 11

    正则表达式可匹配除某些特定字符串以外的任何内容

  12. 12

    正则表达式匹配地址中的任何字符串组

  13. 13

    匹配任何字符串的正则表达式,最多可达“ /” Javascript

  14. 14

    如何匹配正则表达式中组合的任何数字或字符串?

  15. 15

    正则表达式以匹配引号之间的任何字符串

  16. 16

    Java 正则表达式。匹配任何前面没有给定字符串的“值”

  17. 17

    使用正则表达式匹配字符串?

  18. 18

    Java正则表达式匹配字符串

  19. 19

    返回匹配正则表达式的字符串

  20. 20

    匹配不带正则表达式的字符串

  21. 21

    正则表达式以匹配Java字符串

  22. 22

    Vim:匹配字符串的正则表达式

  23. 23

    正则表达式匹配空字符串?

  24. 24

    正则表达式不匹配字符串

  25. 25

    与正则表达式匹配的Java字符串

  26. 26

    正则表达式匹配特定字符串

  27. 27

    正则表达式-匹配字符串模式

  28. 28

    正则表达式与字符串不匹配

  29. 29

    字符串与正则表达式不匹配

热门标签

归档