问题内容: 我正在使用此模式检查字符串是否在冒号前面至少以2个字母字符开头: 但是我遇到了以下异常: 即使Pattern类的规范指出: 与IsAlphabetic中一样,二进制属性以前缀Is指定。Pattern支持的二进制属性是 字母顺序 表意文字 信 … 以及 Unicode脚本,块,类别和二进制属性 列表的类部分 问题答案: 使用Java 1.8工作并返回true。 请注意,Java 1.7中
问题内容: 首先, 我需要使用正则表达式来匹配或或(仅是国家编号)。我需要的用户能够输入一个并没有什么之后。似乎无法正确解决。 我发现所有正则表达式都匹配 所有 十进制数字,即 像这个正则表达式 问题是,我需要一个正则表达式,因此输入只能是带/不带小数点的数字。 但是要抓住的是它也需要匹配 因此,用户可以在文本字段中输入小数。所以基本上我需要用正则表达式来匹配 到目前为止,我的模式就是上面的模式。
问题内容: 我对这一切都是陌生的,实际上我只是对编码有基本的了解。 我实际上正在尝试使用在ChemMedChem中发布的Java代码(支持信息中为dx.doi.org/10.1002/cmdc.200900317) 我拥有他们使用的所有适当程序/ jar文件(来自ChemAxon) 我能够复制代码并将其编译到类文件中而没有任何问题: 虽然我得到: 然后,当它尝试运行类文件时(将输入文件作为虚拟化学
问题内容: 我想检查一个字符串是否按顺序包含单词“ stores”,“ store”和“ product”,无论它们之间是什么。 我尝试使用;并且; 我是否需要显式声明一个正则表达式并将其传递给方法,还是完全不能传递正则表达式? 问题答案: String.contains 与字符串,句点一起使用。它不适用于正则表达式。它将检查指定的确切字符串是否出现在当前字符串中。 注意不检查单词边界。它只是检查
问题内容: 因此,对于Java中的正则表达式,我想编写一个正则表达式,当且仅当模式前面没有某些字符时才匹配。例如: 如果bar不以foo开头,我想匹配。因此输出为: 我知道这可能是一个非常简单的问题。我正在尝试学习正则表达式,但与此同时我现在需要一些工作。 问题答案: 你想这样使用: 此处的()意思是“仅在此点之前没有“ x”。 有关更多信息,请参见正则表达式-环顾四周。 编辑:添加来捕获之前的字
问题内容: 用于正则表达式的Java API 声明将匹配空格。因此,正则表达式应匹配两个空格。 这样做的目的是用单个空格替换两个连续空格的所有实例。但是,这实际上不起作用。 我对正则表达式或“空白”一词有严重的误解吗? 问题答案: 是的,你需要获取matcher.replaceAll()的结果:
问题内容: 在使用正则表达式时,我使用RegexBuddy。我从其库中复制了正则表达式以匹配URL。我在RegexBuddy中成功测试。但是,当我将其复制为Java 样式并将其粘贴到Java代码中时,它将无法正常工作。以下类打印: 有人知道我在做什么错吗? 问题答案: 请尝试以下正则表达式字符串。你的测试可能以区分大小写的方式进行。我添加了小写字母Alpha以及正确的字符串开头占位符。 这也适用:
问题内容: 谁能解释和正则表达式元字符之间的区别?据我了解,这两个元字符都用于单词边界。除此之外,哪个元字符对于多语言内容有效? 问题答案: 元字符是锚号,例如插入号和美元符号。它在称为“单词边界”的位置匹配。此匹配为零长度。 有三个不同的位置可作为单词边界: 如果字符串中的第一个字符是单词字符,则在字符串中第一个字符之前。 如果字符串中的最后一个字符是单词字符,则在字符串的最后一个字符之后。 字
问题内容: 假设我有一个文件,该文件包含以下内容: 我编译一个模式以查找“ Hello” 然后,我使用inputstream读取文件并将其转换为String,以便可以对其进行正则表达式处理。 匹配器在文件中找到匹配项后,就会进行指示,但不会告诉我找到了多少个匹配项。只是它在字符串中找到了一个匹配项。 因此,由于字符串相对较短,并且我正在使用的缓冲区为200个字节,因此它应该找到三个匹配项。但是,它
问题内容: 如果我有这样的字符串: 我需要一种从字符串中获取“ BAR”字符串的通用方法,以便无论方括号之间是什么字符串,都可以获取该字符串。 例如 问题答案: 你应该能够使用非贪婪的量词,特别是*?。你可能需要以下条件: 这将为你提供一个与你的字符串匹配的模式,并将文本放在第一组的方括号内。请查看Pattern API文档以获取更多信息。 要提取字符串,可以使用如下所示的内容:
问题内容: 是否可以创建具有可变数量的组的正则表达式? 例如运行此之后… …我想要一些类似的东西 m.group(1) = “c” m.group(2) = “d” m.group(3) = “d” m.group(4)= “c”。 (背景:我正在解析一些数据行,“字段”之一正在重复。我想避免这些字段的循环。) 问题答案: 根据文档,Java正则表达式不能做到这一点: 与组关联的捕获输入始终是该组
问题内容: 我经常在调试程序时发现在代码块中插入return语句很方便(尽管可能是不好的做法)。我可能会在Java中尝试类似的方法.... 当然,这会产生编译器错误。 Test.java:7:无法访问的语句 我能理解为什么警告是合理的,因为有未使用的代码是不好的做法。但是我不明白为什么这需要产生一个错误。 这只是Java试图成为一个保姆,还是有充分的理由使它成为编译器错误? 问题答案: 因为无法到
问题内容: 我有一个类似于以下内容的字符串: 我想创建一个与逗号匹配的正则表达式,但只匹配不在括号内的逗号(在上面的示例中,除23和45之后的两个逗号之外,所有其他逗号)。我将如何做(如果使用Java正则表达式会有所不同)? 问题答案: 假定没有嵌套的括号(否则,你不能使用Java Regex来完成此任务,因为不支持递归匹配): 此正则表达式使用否定的超前断言来确保下一个括号(如果有)不是闭合括号
问题内容: 我偶然发现了以下Java代码,该代码使用了方法参考 等价的lambda表达式是什么? 问题答案: 方法参考将首先求值,然后创建一个等效的表达式来捕获求值。通常,你将使用 与方法引用相同的方法来实现,但是此lambda表达式将在每次调用该方法时求值。 因此,确切的等效条件是: 如果有人;在两者之间进行调用,则会有所不同。
问题内容: 我正在尝试创建一个应用程序,该应用程序将消息模板与用户尝试发送的消息进行匹配。我正在使用Java正则表达式来匹配消息。模板/消息可能包含特殊字符。 我如何获取需要转义的特殊字符的完整列表,以使我的正则表达式在最大可能的情况下起作用并匹配? 是否存在通用的解决方案,可以在Java正则表达式中转义所有特殊字符? 问题答案: 你可以查看Pattern类的javadoc:http : //do