我想删除字符串中的前缀和后缀,并提取字符串的中间部分。
例如:考虑字符串-“ www.hello.com” 和“ www.test.com”
此处前缀-“ www。” 和后缀-“。com” 。我想提取中间词-你好和测试。
目前,我已经使用Java中的String.replace()方法实现了这一点。 str.replace(“ www。”,“”)。replace(“。com”,“”);
我想知道在Java中的单个方法中是否可以使用任何正则表达式来实现它。
答案 0 :(得分:2)
您可以为此使用正则表达式,它的工作方式相同。您的正则表达式将仅包含一个OR组中带有前缀和后缀的捕获组。
(www\.|\.com)
然后可以像使用替换一样使用它。
String test = "www.test.com";
String output = test.replaceAll("(www\\.|\\.com)","")
PS (未经验证)。请不要只复制并粘贴它,否则一切都会正常。
答案 1 :(得分:1)
(?<= www。)(。*)(?=。com)
这使用了正则表达式的后向和超前功能