Java 删除所有以“开始”开头的单词;http「;一串?

Java 删除所有以“开始”开头的单词;http「;一串?,java,string,replace,Java,String,Replace,我只想替换字符串中以“http”开头、以空格或“\n”结尾的所有单词 示例字符串为 全部结果如下 是图像的url 或者有时候,这是一个示例文本 字符串的结果应该是 是图像的url 或者有时候,这是一个示例文本 我只想用“”来代替它;我知道逻辑,但不知道功能 我的逻辑是 string.startwith("http","\n")// starts with http and ends on next line or space .replaceAll("") String.replaceAll

我只想替换字符串中以“http”开头、以空格或“\n”结尾的所有单词

示例字符串为

全部结果如下

是图像的url

或者有时候,这是一个示例文本

字符串的结果应该是

是图像的url

或者有时候,这是一个示例文本

我只想用“”来代替它;我知道逻辑,但不知道功能

我的逻辑是

string.startwith("http","\n")// starts with http and ends on next line or space

.replaceAll("")
String.replaceAll()
允许您使用正则表达式。在正则表达式中,
^
允许您捕获字符串的开头。因此,您可以这样做:

System.out.print("http://google-http".replaceAll("^http", ""));
结果:

://google-http
开头的
http
已被删除,但结尾的那一个未被删除。

String.replaceAll()
允许您使用正则表达式。在正则表达式中,
^
允许您捕获字符串的开头。因此,您可以这样做:

System.out.print("http://google-http".replaceAll("^http", ""));
public static void main(String[] args) {
    String s = "https://www.google.com/abc.jpg is a url of an image.";
    System.out.println(s.replaceAll("https?://.*?\\s+", ""));

}
结果:

://google-http
开头的
http
已被删除,但结尾的那一个未被删除。

String.replaceAll()
允许您使用正则表达式。在正则表达式中,
^
允许您捕获字符串的开头。因此,您可以这样做:

System.out.print("http://google-http".replaceAll("^http", ""));
public static void main(String[] args) {
    String s = "https://www.google.com/abc.jpg is a url of an image.";
    System.out.println(s.replaceAll("https?://.*?\\s+", ""));

}
结果:

://google-http
开头的
http
已被删除,但结尾的那一个未被删除。

String.replaceAll()
允许您使用正则表达式。在正则表达式中,
^
允许您捕获字符串的开头。因此,您可以这样做:

System.out.print("http://google-http".replaceAll("^http", ""));
public static void main(String[] args) {
    String s = "https://www.google.com/abc.jpg is a url of an image.";
    System.out.println(s.replaceAll("https?://.*?\\s+", ""));

}
结果:

://google-http
已删除开头的
http
,但未删除结尾的

public static void main(String[] args) {
    String s = "https://www.google.com/abc.jpg is a url of an image.";
    System.out.println(s.replaceAll("https?://.*?\\s+", ""));

}
O/p:

O/p:

O/p:

O/p:



或者如果它以https开头,我必须用https再次调用它,否则会有另一个approach@Nepster-已修复..:)。现在它同时适用于
http
https
,我要求使用一个函数在单个字符串中同时执行http和https。当我使用http调用两次,使用https调用第二次时,您的上一个答案运行良好。现在我在问有没有一种方法可以创建一个函数,答案是+10,你能解释一下吗?意思是,我认为s是任意数words@Nepster-我把
放错地方了。检查最新编辑。。顺便说一句,https?同时匹配
http
https
,也就是说,它匹配
http
,后跟0或1
s
*?
是一个不情愿的量词,它从一开始就匹配一个字符。或者如果它以https开头,我必须用https再次调用它,否则会有另一个字符approach@Nepster-已修复..:)。现在它同时适用于
http
https
,我要求使用一个函数在单个字符串中同时执行http和https。当我使用http调用两次,使用https调用第二次时,您的上一个答案运行良好。现在我在问有没有一种方法可以创建一个函数,答案是+10,你能解释一下吗?意思是,我认为s是任意数words@Nepster-我把
放错地方了。检查最新编辑。。顺便说一句,https?同时匹配
http
https
,也就是说,它匹配
http
,后跟0或1
s
*?
是一个不情愿的量词,它从一开始就匹配一个字符。或者如果它以https开头,我必须用https再次调用它,否则会有另一个字符approach@Nepster-已修复..:)。现在它同时适用于
http
https
,我要求使用一个函数在单个字符串中同时执行http和https。当我使用http调用两次,使用https调用第二次时,您的上一个答案运行良好。现在我在问有没有一种方法可以创建一个函数,答案是+10,你能解释一下吗?意思是,我认为s是任意数words@Nepster-我把
放错地方了。检查最新编辑。。顺便说一句,https?同时匹配
http
https
,也就是说,它匹配
http
,后跟0或1
s
*?
是一个不情愿的量词,它从一开始就匹配一个字符。或者如果它以https开头,我必须用https再次调用它,否则会有另一个字符approach@Nepster-已修复..:)。现在它同时适用于
http
https
,我要求使用一个函数在单个字符串中同时执行http和https。当我使用http调用两次,使用https调用第二次时,您的上一个答案运行良好。现在我在问有没有一种方法可以创建一个函数,答案是+10,你能解释一下吗?意思是,我认为s是任意数words@Nepster-我把
放错地方了。检查最新编辑。。顺便说一句,https?同时匹配
http
https
,也就是说,它匹配
http
,后跟0或1
s
*?
是一个不情愿的量词,从一开始一次匹配一个字符。它将只替换http。我想删除完整路径@最重要的答案是正确的。但是我必须用http调用它两次,一次用http调用,第二次用HTTPST调用。该代码将正确执行。如果您需要简化此代码,您可以使用元素“http://”和“https://”创建一个数组,然后使用数组搜索函数,您可以检查给定字符串中是否存在子字符串。如果找到,请将该字符串替换为空字符。您无法理解我。我的问题是替换开头可能不完整的单词。看见我的HTTP URL可能在一个字符串的中间。但是您的代码搜索是否开始。它只会替换HTTP。我想删除完整路径@最重要的答案是正确的。但是我必须用http调用它两次,一次用http调用,第二次用https调用。这段代码将正确执行。如果您需要简化这段代码,您可以创建一个包含元素“http://”和“https://”的数组,然后