草庐IT

php - 让我了解 preg_replace

我一直在Internet上寻找一些有用的信息,但我想我找到的太多了。我试图理解正则表达式,但不明白。比方说$data="Abunchoftext[link=123]anotherbunchoftext.",它应该被替换为"123".我已经尝试了很多类似这样的代码:$find="/[link=[([0-9])]/";$replace="$1";echopreg_replace($find,$replace,$data);但输出始终与原始$data相同。我认为我必须了解与我的问题相关的内容,了解基础知识。 最佳答案 去掉()两边多余的[

php - preg_match 获取包含 123 和 .txt 之间任何字符的文件?

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。我需要使用preg_match来获取符合特定条件的文件。例如,我想找到一个名为“123-stack-overflow.txt”的文件。123-之后和.txt之前可以有任何字符。如何修改它才能正常工作?preg_match("/^$ID-(.+).txt/",$name,$file);

php - 用 preg_split 分离一些东西

我这辈子都不知道如何编写正则表达式来拆分它。假设我们有示例文本:15HGH(Whatever)ASD我想把它分成以下几组(数字、字母本身和括号内容)15HGHWhateverASD它可以是以上的任意组合,例如:15HGH12ABCDABCD(Whatever)(test)到目前为止,我已经得到它来分解数字/字母或只是分解的括号部分。例如,在这种情况下:它会给我数组([0]=>5[1]=>测试[2]=>测试)我不太确定要在正则表达式中放入什么以仅在组合时匹配数字和单个字符。有什么建议吗? 最佳答案 不知道preg_match_all是

php - 如何使用 preg_replace 将表格宽度更改为 100%

如果宽度值以像素为单位,我想将table宽度更改为100%。我的意思是,如果表格宽度看起来像width="500"或width="500px",那么我想将其替换为100%.我的意思是像这样width="100%"。谁能帮我做preg_replace。$content='holdsallmyhtmlcontent';$replace='100%';preg_replace($pattern,$replace,$content,-1);有人可以帮我处理$pattern吗? 最佳答案 $string='';$pattern='/width

php - preg_match 获取文本

我有test.php和test1.php我有这个PHP代码正在运行我想做的是从test.php中获取文本从这个fid='gty5etrf'JavaScript我只需要fid的内容fid='gty5etrf';v_width=620;v_height=490;在test1.php中我只需要显示内容gty5etrf我必须做什么? 最佳答案 preg_match_all('/fid=\'([^\']+)\'/',$Text,$Match);你的正则表达式是错误的。首先,您正在寻找fid="..."而不是fid='...'。其次,使用.*,

php - 了解 preg_match 公式

我无论如何都让我的东西与以下行一起工作,但我真的无法理解。if(preg_match_all('/[^=]*=([^;@]*)/',shell_exec("/home/technoworld/Desktop/test/b'$test'"),$matches)){$x=(int)$matches[1][0];//optionallycasttoint$y=(int)$matches[1][1];$pcount=round((100*$x)/($x+$y),2);$ncount=round((100*$y)/($x+$y),2);}b是可执行文件,它给出的结果类似于x=10和y=20谁能给

php - preg_match 如何处理使用\Q..\E 时的定界符?

我在玩正则表达式,我尝试了\Q..\E转义序列。第一次尝试:$regex='/\Qhttp://\E/';var_dump(preg_match($regex,'http://'));它告诉我'\'是未知修饰符,完全可以理解。第二次尝试:$regex='/\Qhttp:\/\/\E/';var_dump(preg_match($regex,'http://'));var_dump(preg_match($regex,'http:\/\/'));它运行,不匹配第一个字符串,但匹配第二个。我知道我可以使用其他分隔符或不使用\Q..\E来解决它,但我很好奇它是如何工作的。我首先通过它通过分隔

php - preg_match 转储空数组

鉴于我有urlhttps://website.com/test/demo/success.php?token=-abc123-我想获取值abc123。不知何故,我在preg_match上得到了两个空字符串。$url='https://website.com/test/demo/success.php?token=-abc123-';preg_match('-(.*?)-',$url,$match);var_dump($match);输出:array(2){[0]=>string(0)""[1]=>string(0)""}我在这里做错了什么? 最佳答案

php - preg_match_all - 在字符串中查找完整 url 的正则表达式

我花了4个多小时试图找到我的php代码的正则表达式模式,但运气不佳。我有一个带有html代码的字符串。它有很多url格式,例如:example.comhttp://example.comhttp://www.example.comhttp://example.com/some.phphttp://example.com/some.php?var1=1http://example.com/some.php?var1=1&var2=2etc.我有以下部分工作的php代码:preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[

php - Preg 用 li 替换 div 但保持类活跃

试图了解如何为将转换的字符串创建PHPpreg替换123etc到123etc想出如何替换元素,但不知道如何保持类处于事件状态。$new_pagination=preg_replace('/]*>(.*)/U','$1',$old_pagination);有什么想法吗? 最佳答案 试试这个..你也可以使用str_ireplace来做到这一点123';echostr_ireplace(array(' 关于php-Preg用li替换div但保持类活跃,我们在StackOverflow上找到一个