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

在Java中的正则表达式匹配之后删除String的一部分

怀飞扬
2023-03-14
问题内容

我想删除符合我的正则表达式的字符串的一部分。

我正在尝试制作一个电视节目组织计划,我想以SXXEXX的形式在季节和剧集标记后的名称中剪掉任何内容,其中X是一个数字。

我相当容易地掌握了正则表达式模型,以创建应正确匹配的“ [Ss] \ d \ d [Ee] \ d \ d”。

我想使用Matcher方法end()来获取匹配字符串中的最后一个索引,但是它似乎并没有按照我认为的那样工作。

Pattern p = Pattern.compile("[Ss]\\d\\d[Ee]\\d\\d");
Matcher m = p.matcher(name);

if(m.matches())
    return name.substring(0, m.end());

如果有人可以告诉我为什么这行不通并建议适当的方法,那将是很好的。谢谢。


问题答案:

matches()尝试再次匹配整个字符串的模式。如果要在字符串中查找模式,请使用find()find()将搜索字符串中的下一个匹配项。

您的代码可能完全相同:

if(m.find())
    return name.substring(0, m.end());


 类似资料:
  • 我想匹配单词的一部分,如果模式中单词的长度小于我匹配的字符串,则可以匹配,例如: 输出为true。但是,如果单词长度较大,则返回false,例如: 那么,我怎样才能只匹配单词的一部分呢?

  • 本文向大家介绍正则表达式模式匹配的String方法,包括了正则表达式模式匹配的String方法的使用技巧和注意事项,需要的朋友参考一下 在JavaScript代码中使用正则表达式进行模式匹配经常会用到String对象和RegExp对象的一些方法,例如replace、match、search等方法,以下是对一些方法使用的总结。 String对象中支持正则表达式有4种方法,分别是:search、rep

  • 有没有人试图描述与正则表达式匹配的正则表达式? 由于重复的关键字,这个主题几乎不可能在网上找到。 它可能在实际应用程序中不可用,因为支持正则表达式的语言通常具有解析它们的方法,我们可以将其用于验证,以及一种在代码中分隔正则表达式的方法,可用于搜索目的。 但是我仍然想知道匹配所有正则表达式的正则表达式是什么样子的。应该可以写一个。

  • 问题内容: 当字符串以数字开头时,我需要匹配,然后是一个点,然后是一个空格和1个或多个大写字符。匹配必须发生在字符串的开头。我有以下字符串。 我尝试过的正则表达式是: 它不匹配。一个有效的正则表达式将对这个问题有什么作用? 问题答案: (对不起,我先前的错误。大脑现在坚定地投入了。嗯,也许。) 这有效: 分解: =字符串开头 =一个或多个数字 (之所以转义,是因为它在字符串中,因此) =文字(或者

  • 问题内容: 我从以下格式的文件中获取输入: 现在,我想在我的Java代码中读取int1,int2,int3和int4。我该如何在Java中使用正则表达式匹配。谢谢。 问题答案: 为了避免空值: