怎样用正则匹配不带链接的文字?
RegEx.Pattern = "(>[^> 这是ASP版本的 PHP用不行
做站内链接功能
需要循环匹配不带链接的文字
比如
我爱CSDN 我爱CSDN,CSDN不爱我
然后中间有 CSDN的 就替换成
CSDN
可能循环替换多次,如果直接替换 就会乱码了
所以求个正则,如果发现是链接和链接内的文字 就不替换
要求是 已替换过的 不再替换 比如 先把 “CSDN不爱我” 替换为链接 然后 再把 剩下的 “CSDN” 替换成链接
把 “CSDN不爱我” 替换了 ,那这句里的 “CSDN” 也不会再被替换
回复讨论(解决方案)
有大神写过给个例子吗?
不清楚,同求
我爱CSDN 我爱CSDN,CSDN不爱我
然后中间有 CSDN的 就替换成
CSDN
如果第二次编辑的时候, href中的csdn不要替换,
没人会吗?急呐
$s =<<< TXT我爱CSDN 我爱CSDN,CSDN不爱我TXT;$p = '/((?:^|>).*?)(CSDN)([^<]*(?:<(?!\/a)|$))/is';$r = '$1<a href="http://bbs.csdn.net/" title="$2">$2</a>$3';do { $t = $s; $s = preg_replace($p, $r, $t);}while($s != $t);echo $s;
$s =<<< TXT我爱CSDN 我爱CSDN,CSDN不爱我TXT;$p = '/((?:^|>).*?)(CSDN)([^<]*(?:<(?!\/a)|$))/is';$r = '$1<a href="http://bbs.csdn.net/" title="$2">$2</a>$3';do { $t = $s; $s = preg_replace($p, $r, $t);}while($s != $t);echo $s;
如果重复次数多了 还是会乱掉
比如 继续替换 我爱 爱我 加上链接
CS加链接
S加链接
我现在用的是笨方法
1、把字符串里的图给换成数组标记
2、把链接也换
3、替换
4、还原图的数组标记
5、还原链接的数组标记
这样就不会乱了 但感觉效率好低啊 版主这个能否再改进下呢?
字符串是

需要依次给
我是文章 文章
都加上链接http://csdn.net 有没办法呢
$abc = '欢迎'; $c='liw5ucms PHP版本即将发布,欢迎大家关注!en <img src="/static/imghw/default1.png" data-src="/images/hh/02.gif" class="lazy" alt="人民" />dfds <img src="/static/imghw/default1.png" data-src="/img/ad.gif" class="lazy" alt="" />dhh呵呵 <a tittle="人民" href="http://www.qiusongsong.com">站长导航</a> 啊哈哈<a href="http://www.5ucms.com">5ucms</a>啊哈哈 <a href="http://qiusongsong.net">邱嵩松</a>tjgad'; echo '原文=<br>'.$c.'<hr>'; echo '替换词=<br>'.$abc.'<hr>'; // 第一步获取字符串里所有图片的正则表达式 preg_match_all("/<img (.*?)\ alt="怎样用正则匹配不带链接的文字?" >/i",$c,$arryimg); $imgtimes = count($arryimg); for($j=0;$j<$imgtimes;$j++){ //读取出符合的关键词名称 $img = $arryimg[0][$j]; $c = str_ireplace($img,'@img['.$j.']@',$c);//替换掉 变成链接 $qimg[$j] = $img;//存入数组 } // 第二步获取字符串里所有超链接的正则表达式 preg_match_all("/<a(.*?)>(.*?)<\/a>/i",$c,$arrya); $atimes = count($arrya); for($j=0;$j<$atimes;$j++){ //读取出符合的关键词名称 $a = $arrya[0][$j]; $c = str_ireplace($a,'@a['.$j.']@',$c);//替换掉 变成链接 $qa[$j] = $a;//存入数组 } echo '去图+链接=<br>'.$c.'<hr>'; // 第三步 按指定次数替换 $c = str_replace($abc,'<a href="http://baidu.com" title="百度" >'.$abc.'</a>',$c);//替换掉 指定次数 变成链接 echo '替换结果=<br>'.$c.'<hr>'; // 第四步 恢复旧的图片 for($i=0;$i<count($qimg);$i++){ $c = str_replace('@img['.$i.']@',$qimg[$i],$c);//替换掉 指定次数 变成链接 } //第五步 恢复旧的链接 for($i=0;$i<count($qa);$i++){ $c = str_replace('@a['.$i.']@',$qa[$i],$c);//替换掉 指定次数 变成链接 } echo '还原结果=<br>'.$c;

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds





Alipay Php ...

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Le détournement de la session peut être réalisé via les étapes suivantes: 1. Obtenez l'ID de session, 2. Utilisez l'ID de session, 3. Gardez la session active. Les méthodes pour empêcher le détournement de la session en PHP incluent: 1. Utilisez la fonction Session_RegeReate_id () pour régénérer l'ID de session, 2. Stocker les données de session via la base de données, 3. Assurez-vous que toutes les données de session sont transmises via HTTPS.

L'application du principe solide dans le développement de PHP comprend: 1. Principe de responsabilité unique (SRP): Chaque classe n'est responsable d'une seule fonction. 2. Principe ouvert et ferme (OCP): les changements sont réalisés par extension plutôt que par modification. 3. Principe de substitution de Lisch (LSP): les sous-classes peuvent remplacer les classes de base sans affecter la précision du programme. 4. Principe d'isolement d'interface (ISP): utilisez des interfaces à grain fin pour éviter les dépendances et les méthodes inutilisées. 5. Principe d'inversion de dépendance (DIP): les modules élevés et de bas niveau reposent sur l'abstraction et sont mis en œuvre par injection de dépendance.

Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système. Chaque fois que le système redémarre, nous devons exécuter la commande suivante pour modifier les autorisations d'UnixSocket: sudo ...

Comment déboguer le mode CLI dans phpstorm? Lors du développement avec PHPStorm, nous devons parfois déboguer PHP en mode interface de ligne de commande (CLI) ...

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Envoyant des données JSON à l'aide de la bibliothèque Curl de PHP dans le développement de PHP, il est souvent nécessaire d'interagir avec les API externes. L'une des façons courantes consiste à utiliser la bibliothèque Curl pour envoyer le post� ...
