当前位置: 首页 > 面试题库 >

Java\ w和\ b正则表达式元字符之间的区别

厍书
2023-03-14
问题内容

谁能解释\b\w正则表达式元字符之间的区别?据我了解,这两个元字符都用于单词边界。除此之外,哪个元字符对于多语言内容有效?


问题答案:

元字符\b是锚号,例如插入号和美元符号。它在称为“单词边界”的位置匹配。此匹配为零长度。

有三个不同的位置可作为单词边界:

  • 如果字符串中的第一个字符是单词字符,则在字符串中第一个字符之前。
  • 如果字符串中的最后一个字符是单词字符,则在字符串的最后一个字符之后。
  • 字符串中的两个字符之间,其中一个是单词字符,另一个不是单词字符。

简而言之:\b允许你使用形式的正则表达式执行“仅全词”搜索\bword\b。阿“字字符”是可用于形成字的字符。不是“单词字符”的所有字符都是“非单词字符”。

在所有口味中,字符[a-zA-Z0-9_]都是文字字符。这些也与速记字符类匹配\w。在风味比较中显示单词边界的“ ascii”的风味仅将这些识别为单词字符。

\w通常代表“文字字符”[A-Za-z0-9_]。请注意包含下划线和数字。

\B是的否定版本\b\B在每个\b不匹配的位置进行匹配。有效地,\B匹配两个单词字符之间的任何位置以及两个非单词字符之间的任何位置。

\W是的缩写[^\w]版本\w



 类似资料:
  • 问题内容: 谁能解释和正则表达式元字符之间的区别?据我了解,这两个元字符都用于单词边界。除此之外,哪个元字符对于多语言内容有效? 问题答案: 元字符是锚号,例如插入号和美元符号。它在称为 “单词边界” 的位置匹配。此匹配为零长度。 有三个不同的位置可作为单词边界: 如果字符串中的第一个字符是单词字符,则在字符串中第一个字符之前。 如果字符串中的最后一个字符是单词字符,则在字符串的最后一个字符之后。

  • 问题内容: 许多现代正则表达式实现将字符类的简写解释为“任何字母,数字或连接标点符号”(通常:下划线)。这样一来,像一个正则表达式匹配的话像,,或。 不幸的是,Java没有。在Java中,仅限于。除了其他问题之外,这使得匹配上述单词变得困难。 似乎分隔符在不应该匹配的地方匹配。 类似于的,支持Unicode的或 Java 的正确等效方式是什么?还有哪些其他快捷方式需要“重写”以使它们能够识别Uni

  • 本文向大家介绍正则表达式“ [[X?+]””元字符Java,包括了正则表达式“ [[X?+]””元字符Java的使用技巧和注意事项,需要的朋友参考一下 可能量词[X?+]匹配一次存在的X或根本不存在的X。 示例 输出结果

  • 主要内容:实例下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或

  • 本文向大家介绍Java中的正则表达式“ $”(美元)元字符,包括了Java中的正则表达式“ $”(美元)元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“ $ ”与行尾匹配。 例子1 输出结果 例子2 以下Java程序从用户接受5个字符串,并打印以数字结尾的字符串。 输出结果

  • 本文向大家介绍Java中的正则表达式“ ^”(脱字符)元字符,包括了Java中的正则表达式“ ^”(脱字符)元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“ ^”与行的开头匹配。如果在正则表达式中使用此命令,则它将与输入字符串中其后的句子匹配。 例子1 输出结果 例子2 以下Java程序从用户接受5个字符串,并打印以数字开头的字符串。 输出结果