获取字符串中链接地址并替换为想要的内容

原帖地址:http://bbs.csdn.net/topics/370029975#quote

 

要替换的字符串:

http://www.xxx.com/1噶为欧冠奇偶位i二姐http://www.xxx.com/1/2乌黑欧冠我几乎http://www.xxx.com/1/2/3的稿费欧文和岗位i偶尔给http://www.xxx.com/1.jpg


java代码:


public static void main(String[] args) {
String str = "http://www.xxx.com/1噶为欧冠奇偶位i二姐http://www.xxx.com/1/2乌黑欧冠我几乎http://www.xxx.com/1/2/3的稿费欧文和岗位i偶尔给http://www.xxx.com/1.jpg";
str = str.replaceAll("(?is)(http://[/\\.\\w]+\\.jpg)","<img src='$1'/>");
str = str.replaceAll("(?is)(?<!')(http://[/\\.\\w]+)","<a href='$1'>$1</a>");
System.out.println(str);
}




另附jS代码:


function filterShortUrl(html){
return html.replace(/http:\/\/t.cn\/\w+/g,"<a href='$&' target='_blank'>$&</a>");  // 其中t.cn为url中的前缀,若不需要去除即可
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 JavaScript ,可以使用正则表达式来匹配字符串的链地址,然后使用 replace() 方法来替换成 a 标签。 例如: ``` var str = "这是一个链地址:https://www.example.com"; var pattern = /(https?:\/\/[^\s]+)/g; var replacement = '<a href="$1">$1</a>'; str = str.replace(pattern, replacement); console.log(str); ``` 输出结果为: "这是一个链地址:<a href="https://www.example.com">https://www.example.com</a>" ### 回答2: 在JavaScript,我们可以使用正则表达式和字符串方法来获取字符串的链地址并将其替换为a标签。 首先,我们可以使用正则表达式来匹配字符串的链地址。例如,我们可以使用以下正则表达式来匹配"http://"或"https://"开头的链地址: ```javascript const regex = /(http:\/\/|https:\/\/)\S+/g; ``` 然后,我们可以使用字符串的`replace()`方法来替换匹配到的链地址为a标签。我们可以传入一个回调函数作为`replace()`方法的第二个参数,该回调函数的参数为被匹配到的链地址,我们可以在回调函数进行替换操作。例如: ```javascript const str = "这是一个包含链地址字符串,例如http://www.example.com和https://www.example.com"; const result = str.replace(regex, (match) => { return '<a href="' + match + '">' + match + '</a>'; }); console.log(result); ``` 输出结果为: ``` 这是一个包含链地址字符串,例如<a href="http://www.example.com">http://www.example.com</a>和<a href="https://www.example.com">https://www.example.com</a> ``` 这样,我们就可以成功获取字符串的链地址并将其替换为a标签了。 ### 回答3: JavaScript可以使用正则表达式和字符串的replace()方法来获取字符串的链地址替换成a标签。具体步骤如下: 1. 使用正则表达式来匹配字符串的链地址。可使用以下正则表达式进行匹配:/((http|https|ftp):\/\/[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-@?^=%&/~\+#])?)/gi。该正则表达式匹配http、https、ftp开头的链地址,并允许一些特殊字符和路径参数。 2. 使用字符串的replace()方法来替换匹配到的链地址。可以传入一个替换函数作为replace()方法的第二个参数。该替换函数会被调用一次传入匹配到的链地址,并返回替换后的字符串。 示例代码如下: ```javascript let str = '这是一个包含链地址字符串地址为http://www.example.com,还有一个https://www.example.com'; let regex = /((http|https|ftp):\/\/[\w\-]+(\.[\w\-]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-@?^=%&/~\+#])?)/gi; let result = str.replace(regex, (match) => { return '<a href="' + match + '">' + match + '</a>'; }); console.log(result); ``` 运行以上代码,输出结果为: 这是一个包含链地址字符串地址为<a href="http://www.example.com">http://www.example.com</a>,还有一个<a href="https://www.example.com">https://www.example.com</a> 通过以上步骤,我们可以在字符串获取替换地址为a标签。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值