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

在Java正则表达式中设置两个标志

农鸿达
2023-03-14
问题内容

我需要这样的匹配器:

Matcher kuchen = Pattern.compile("gibt es Kuchen in der K\u00FCche",Pattern.CASE_INSENSITIVE).matcher("");

问题是它不是简单的ASCII。我知道在这种特殊情况下,我可以将[\ u00FC \
u00DC]用于ü,但是我需要更加通用(从其他匹配器组构建正则表达式)。所以根据javadocs:

默认情况下,不区分大小写的匹配假定只匹配US-
ASCII字符集中的字符。可以通过将UNICODE_CASE标志与该标志一起指定来启用Unicode感知的不区分大小写的匹配。

谁能告诉我如何同时指定两个标志?


问题答案:

尝试

Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE

它应该解决问题。或对位掩码进行操作,您将获得复合功能。



 类似资料:
  • 问题内容: 首先,我阅读以下文档 http://download.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html 而且我想找到除@’之外的任何标点符号,但我不太了解。 这是 : 结果是没有匹配。 是否有任何不匹配? 谢谢 MRizq 问题答案: 您要匹配两个字符,而不是一个。使用(负)前瞻应解决以下任务:

  • 我在我的程序中添加了一个记录器,在网上冲浪我在代码中添加了一个非常简单的记录器,具有基本的两行定义: 经过几个小时的开发,我想知道如何格式化记录文本的样式,于是我来到了这门课: 阅读Javadoc我可以找到: 可以通过在java中指定格式字符串来定制格式。util。登录中。简单格式化程序。格式属性。 还有几个例子: 我试了每一个,但“格式”字段是“不可见”(我想是私有的),所以我不能直接编辑它。没

  • 我有3个正则表达式,但当模式匹配时执行相同的操作,所以我考虑将所有三个表达式合并为一个。我尝试了很多,但无法让“|”I.e”或“在我的正则表达式中工作 regex1:<代码>文本。替换(/([\u00A9-\u3299])/g,函数myFunction(x){…} regex2: regex3: 我试过这样做,但它不起作用regex:

  • 问题内容: 我正在尝试输入之间的内容,我的模式没有做正确的事,请帮忙。 下面是sudocode: 要求的输出: 之一 二 三 问题答案: 先行使用并在循环中使用,而不是: 看到它在线上工作:ideone 但是最好在这里使用split: 看到它在线上工作:ideone

  • 主要内容:正则表达式支持字符正则表达式(Regular Expression)又称正规表示法、常规表示法,在代码中常简写为 regex、regexp 或 RE,它是计算机科学的一个概念。 正则表达式是一个强大的字符串处理工具,可以对字符串进行查找、提取、分割、替换等操作,是一种可以用于模式匹配和替换的规范。一个正则表达式就是由普通的字符(如字符 a~z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的

  • 问题内容: 我想在特定字符串中匹配正斜杠或反斜杠,例如: 1. 2. 3. 4. 在给定的字符串中,不应匹配最后一个记录,因为它不包含或。 我在用什么 这仅适用于正斜杠。我不知道如何为两个斜杠写正则表达式(条件)。 问题答案: 您要匹配的“字符”为: 先为字符串复制反斜杠,然后再为正则表达式复制。 当您需要在也使用反斜杠转义字符串的语言中使用反斜杠时,这可能是最讨厌的正则表达式。 Java编译器会