PHP利用正则表达式替换标签

$str = ‘你好吗,还可以吧一般般了[link url="http://www.chinanews.com/sh/2015/11-13/7621991.shtml"]义昌大桥爆炸垮塌致14死案宣判 被告人张根林死缓[/link]一点都不好怎么办啊areyouok[][link url="http://www。baidu。com"]这个正则表达式确定好使嘛[/link]are幽邃‘;

$string = ‘你好这是一个连接<a href="https://www.baidu.com/s?wd=preg_match_all&tn=44039180" target="_blank" class="baidu-highlight">preg_match_all</a>你好吗这还是几日人了‘;

preg_match_all(‘/<a href=\"(.*?)\".*?>(.*?)<\/a>/i‘,$string,$arr);
preg_match_all(‘/\[link url=\"(.*?)\".*?\](.*?)\[\/link\]/i‘,$str,$arr);
var_dump($arr);

if($arr){
    foreach($arr[0] as $ke=>$va){
        $str=str_replace($va,‘<a href="‘.$arr[1][$ke].‘" target="_blank" class="col-blue">‘.$arr[2][$ke].‘</a>‘,$str);
    }
}
echo $str;

时间: 2024-09-29 04:25:04

PHP利用正则表达式替换标签的相关文章

JS 利用正则表达式替换字符串

JS 利用正则表达式替换字符串 博客分类: JavaScript 学习资料 Java代码 收藏代码 JS 利用正则表达式替换字符串 var data = "123123,213,12312,312,3,Caat,cat,dsfsdfs,"; var reCat = /\bc([a-z]|[A-Z]|[0-9])*t\b/ig; //•g(全文查找):•i(忽略大小写):•m(多行查找) var res = data.replace(reCat,"AAA"); 输出:

SQL Server中利用正则表达式替换字符串

原文:SQL Server中利用正则表达式替换字符串 建立正则替换函数,利用了OLE对象,以下是函数代码: --如果存在则删除原有函数 IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO --开始创建正则替换函数 CREATE FUNCTION dbo.RegexReplace ( @string VARCHAR(MAX), --被替换的字符串 @pattern VARCHAR(255),

Java 利用replaceAll 替换中括号

Java的replaceAll函数默认是不能替换中括号的,例如想替换[b]到<b>,结果却就变成[<b>] 解决方案就是首先利用正则表达式替换中括号,然后再替换中括号内的内容: Java代码   infos = infos.replaceAll("[\\[\\]]",""); 不过后来又查询了下资料,发现中括号在java中居然是特殊字符,一对中括号里的内容是一组正则表达式.所以如果打算让[b]-><b>,只要如下写法: Ja

用正则表达式替换指定标签中的内容

用正则表达式替换指定标签中的内容,也是在工作中遇到的就顺手记了下来 string sXML = "ABCDEFCSF<p>123123</p>KOPL";//现在我要去掉P标签中的内容,实现 ABCDEFCSFKOPL这样的效果. 引入:using System.Text.RegularExpressions; Regex rg = new Regex("<pict>.*</pict>"); sXML = rg.Rep

利用正则表达式来实现求一个数学表达式的和

1-2*((60-30+(-40.0/5)*(9-2*5/3+7/3*99/4*2998+10*568/14))-(-4*3)/(16-3*2))求上述表达式的结果分析:对于上述表达式,涉及的括号及运算符较多,需使用正则表达式来匹配相应的字符,将字符进行分开计算1.提取最里层括号里面的内容2.计算最里层括号内的乘除运算,并将结果替换到原表达式3.循环执行前两步的结果 1 import re 2 # formula = "1-2*((60-30+(-40.0/5)*(9-2*5/3+7/3*99/

C#利用正则表达式实现字符串搜索---ShinePans

一.字符串搜索 正则表达式由两种基本字符类型组成:原义(正常)文本字符和元字符.元字符组为正则表达式提供了处理能力. 一般表达式语言是一种可以编写搜索表达式的语言.在该语言中,可以把文档中要搜索的文本.转义序列和特定含义的其他字符组合在一起,例如序列表示一个字的开头和结尾(子的边界),如果要表示正在查找的以字符th开头的字,就可以编写一般表达式th(即序列字符界是-t-h).如果要搜索所有以th结尾的字,就可以编写th(序列t-h-字边界).但是,一般表达式要比这复杂得多,例如,可以在搜索

C#下利用正则表达式实现字符串搜索功能的方法(转)

关键字:正则表达式.元字符.字符串.匹配: 1.正则表达式简介:正则表达式提供了功能强大.灵活而又高效的方法来处:.NET框架正则表达式并入了其他正则表达式实现的: 2.字符串搜索:正则表达式语言由两种基本字符类型组成:原义(正常:一般表达式语言是一种可以编写搜索表达式的语言: 3..NET框架的正则表达式类:下面通过介绍.NET框架的正则表达式类,熟悉一下: 1.正则表达式简介 正则表达式提供了功能强大.灵活而又高效的方法来处理文本.正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到

VB.NET利用正则表达式巧妙限制字符输入

在通常的程序设计中,对字符串的操作是不可缺少的部分.例如,我们做的机房收费系统,里面有很多的文本框,按照不同的需要,我们要输入不同的内容,卡号要输入数字,姓名框也要限制输入字符的长度.有时候甚至还需要从字符串中寻找特定的部分,或者对某一部分进行替换.删除等等. 使用传统的字符串函数判断方法或静态字符串操作方法,费时费力,且只能查找字符串中固定不变的部分,缺乏灵活性. 那有什么简单实用的方法呢?通过网络我了解到了一个新的板块"正则表达式" 正则表达式 使用单个字符串来描述.匹配一系列符合

利用正则表达式校验input框输入的字符类型

当做form表单校验时,如果只是想校验输入字符的类型,那么可以在input等标签中利用正则表达式进行校验,而不用通过调用js. 例如,校验输入字符是否为正整数: <input type='text' onkeyup="value=this.value.replace(/\D+/g,'')" /> 或者校验输入字符是否为字符串为数字(正整数+正浮点数): <input type='text' onkeyup="value=this.value.replace(