如何使用java Regex检查字符串的子字符串中是否存在单词

时间:2014-10-02 13:42:47

标签: java regex substring

我有一个格式为“The Url is http://m.gap.com/division.html?dn=gd5646”的字符串列表 该程序的输出是一个包含 product 字样的网址列表。 我已经设法在java中使用正则表达式获取URL但我不明白如何检查单词 product 是否也存在。

2 个答案:

答案 0 :(得分:0)

如果它们都是String对象,则只需在字符串上调用.contains("product")即可。它将根据if" product"返回一个布尔值。在场。

String.contains() documentation

注意:如果需要正则表达式,请尝试String.matches()。它可以由myStr.matches(regex)调用。如果您只需要" product",我相信正则表达式是/product/

答案 1 :(得分:0)

使用contains("product")时的问题是它会检查整个字符串中的单词。

您可以使用以下Regex仅在 url 子字符串中查找单词。

The Url is https?:\/\/(.*product.*)

或者,如果单词Product可以大写,您可以尝试:

The Url is https?:\/\/(.*(P|p)roduct.*)

您可以使用以下String方法测试字符串:

String.matches(regex)

====================================

示例:

if(text.matches("The Url is https?:\/\/(.*product.*)")) {
     //Do Something...
}