Tag: 正则表达式

根据java中小括号的分组拆分复杂的String

我有一个来自UI的复杂字符串,如: (region = “asia”) AND ((status = null) OR ((inactive = “true”) AND (department = “aaaa”)) OR ((costcenter = “ggg”) OR (location = “india”))) 我需要拆分它并在我的代码中使用它,但我必须考虑括号,以便分组完全如图所示。 拆分后,我必须在每次迭代中得到类似下面的内容并将其分解 第一次: (region = “asia”) AND ((status = null) OR ((inactive = “true”) AND (department = “aaaa”)) OR ((costcenter = “ggg”) OR (location = “india”))) 第二次: (region = “asia”) AND […]

使用Java中的Regex在方括号内用逗号分隔值

我有一个像这样的字符串: String text = “[Values, one, two, three]”; 我尝试用Guava的类Splitter做到这一点: List split = Splitter.on(“,”).splitToList(text); 但我的结果是: [Values one two three] 如何使用Regex获取值为1,2和3的List?

查找封闭标签包含特定文本?

我在java中输入了一个完整的html文件作为字符串(我也有文件)。 文字如下所示 Sample input Some text……….. .. some text …….. some text ……. ……….. 以下是我需要付费的步骤 我列出了准备好的代码列表。 我希望迭代列表中的每个代码,然后在代码匹配时捕获该代码周围的封闭消息标记。 然后根据代码值做一些逻辑。 替换具有新值的消息。 基本上我需要根据代码类型替换所有文本 。 例如,如果代码是code1,则用test1替换s:message标记 sample output Some text……….. new text.. some text …….. some text ……. new text……….. 我没有得到如何做第1步,即捕获封闭的消息标签?

如何使用正则表达式validationJTable的第一列?

我正在制作一个程序,我必须validation第一列是否是IP地址。 到目前为止,我只想知道如何过滤行。 但是在将数据写入文件之前必须检查该列。 有人能帮助我吗?

用于嵌套括号的java regexp

考虑以下java字符串: String input = “a, b, (c, d), e, f, (g, (h, i))”; 你能帮我找一个java regexp来获得它的6个部分: a b (c,d) e f (g, (h,i)) 这是从基于“最外部”逗号的原始输入字符串中获得的。

用逗号分隔字符串,但避免使用转义逗号和反斜杠

我想在逗号”,”分割一个字符串。 该字符串包含转义的逗号”\,”并转义反斜杠”\\” 。 开头和结尾的逗号以及连续的几个逗号应该导致空字符串。 所以”,,\,\\,,”应该变成”” , “” , “\,\\” , “” , “” 请注意,我的示例字符串将反斜杠显示为单个”\” 。 Java字符串会使它们加倍。 我尝试了几个包但没有成功。 我的最后一个想法是编写自己的解析器。

带Pattern / Matcher的IllegalStateException

我正在使用Matcher在Java中使用正则表达式捕获组,并且即使我知道表达式匹配,它仍然会抛出IllegalStateException 。 这是我的代码: String safeName = Pattern.compile(“(\\.\\w+)$”).matcher(“google.ca”).group(); 我期望safeName是正常表达式中捕获组捕获的.ca ,但我得到: IllegalStateException:找不到匹配项 我也试过.group(0)和.group(1)但同样的错误发生了。 根据group()和group(int group)的文档: 捕获组从左到右编制索引,从1开始。 组零表示整个模式,因此表达式m.group(0)等效于m.group() 。 我究竟做错了什么?

在HTML(Java)中查找值的快速方法

使用正则表达式,获取网站HTML并查找此标记内的值(或任何属性的值)的最简单方法是: [snip] [snip]

Java Regex不适用于特殊字符

我的解析器出了问题。 我想在网站上阅读图像链接,这通常可以正常工作。 但今天我得到了一个包含特殊字符的链接,通常的正则表达式不起作用。 这就是我的代码的样子。 Pattern t = Pattern.compile(regex.trim()); Matcher x = t.matcher(content[i].toString()); if(x.find()) { values[i] = x.group(1); } 这是html的一部分,会导致麻烦 这是我用来获取src属性中的部分的正则表达式: 我相信它与链接中的所有特殊字符有关。 但我不知道如何逃避所有这些。 我已经尝试过了 Pattern.quote(content[i].toString()) 但结果是一样的:没有找到。

Java模式在`ABC`中找到两组两个字母

我有一个这样定义的模式: private static final Pattern PATTERN = Pattern.compile(“[a-zA-Z]{2}”); 在我的代码中,我这样做: Matcher matcher = PATTERN.matcher(myString); 并使用while循环查找所有匹配项。 while (matcher.find()){ //do something here } 如果myString是12345AB3CD45 ,匹配器会找到两组两个字母( AB和CD )。 问题是我有时myString为12345ABC356所以我希望匹配器找到,首先是AB ,然后是BC (只找到`AB)。 我做错了还是正则表达式错了或匹配器不能这样工作?