草庐IT

php - 使用正则表达式和 PHP

我一直在试图弄清楚如何将字符串下面的字符串转换为多行,它会在两个连续字母后添加逗号。感谢任何帮助。$myLine="1234:21:3AB3459435:2343RT23432523:CD";$myLine=preg_replace('/((?输出为1234:21:3AB,3459435:2343RT,23432523:CD,谢谢,jp我喜欢所有的答案,我感谢大家提供帮助并尝试各种不同的方法来实现这一点。令人惊讶的是regexpphp可以用这么多不同的方式做一件事。再次感谢大家!!!! 最佳答案 这是我很快想到的。$myLine="

php - 删除长词正则表达式

我想知道如何从字符串中删除长单词。大于长度n的单词。我尝试了以下方法://removewordswhichhavemorethan5charactersfromstring$s='abbabbbbbbbbbbbb1234567zxceeytytytytytytytytzczcxyz';echopreg_replace("~\s(.{5,})\s~isU","",$s);给出输出(这是不正确的):abba1234567ytytytytytytytytzczcxyz 最佳答案 使用此正则表达式:\b\w{5,}\b。它将匹配长单词。\b

php - 通过正则表达式查找字符串中的十进制数

我在解析我的命令时遇到小数问题。12.90解析错误://Mycommand$cmd='CREATEproductprice:12.90,name:"Createme"';//Myparserpreg_match_all('/\w+|".*?"|(?!\s)\W/',$cmd,$list);输出:Array([0]=>CREATE[1]=>product[2]=>price[3]=>:[4]=>12//.[6]=>90[7]=>,[8]=>name[9]=>:[10]=>"Createme")我正在寻找这个输出:Array([0]=>CREATE[1]=>product[2]=>pric

php - 用于检测以星号开头的行的正则表达式

下面的代码无法检测到该事件的单个实例。=O怎么了?=\如何检测以下以星号开头的行(以换行符开头)?我不知所措。这与我预期的不同。$text="Nothingheretodetect...thoughitisthefirstline.*''[[test]]*Anotherlinethatstartswithanasterisk**yetanother...thoughithastwo...butwhocaresaboutthe2ndone?";$t=preg_match_all('#^\*.*#',$text,$match);echo"found=".$t."\n";print_r($m

php - preg_replace,正则表达式获取文本部分

我有以下问题:我有一个文本,例如以下格式:min:34.0max:79.0383lifetime:17%code:iweo7373333不是固定的textType,意思是min也可以是-7.94884444左右。我怎样才能提取零件,例如像这样的数组$result['min']=34.0;$result['max']=79.0383andsoon...我现在通过替换空格来做到这一点,然后将“min:”替换为空,“max:”、“lifetime:”……替换为“,”,然后爆炸……主要问题是有时其他变量介于最小值、最大值、...之间,因此位置不保持正确的值。另外-我认为-这不是一个很好的编码风

php - 将字符串的其余部分与正则表达式匹配

我有一个这样的字符串ch:keywordch:testch:some_text我需要一个匹配所有字符串的正则表达式,但是,它不能匹配以下内容:ch:(ch:isproceededbyaspace,oranynumberofspaces)ch:(ch:isproceededbynothing)我能够推断出其中包含“ch:”的字符串的长度。任何帮助,将不胜感激;我正在使用PHP的preg_match()编辑:我试过这个:preg_match("/^ch:[A-Za-z_0-9]/",$str,$matches)但是,这只匹配字符串后的1个字符。我尝试在右方括号后放置一个*,但这匹配空格,这

php - 多个辅音的正则表达式

我正在寻找我想在我的php名​​称生成器脚本中使用的正则表达式模式。它应该检测字符串是否包含三个连续的辅音。但如果三个连续辅音中的两个连续辅音相同,则不应检测字符串。例子:"hello"->False,becausetherearen't3consecutiveconsonants."matching"->True,becausethereare3consecutiveconsonants."apple"->False,althoughthereare3consecutiveconsonants,becausetwoconsecutiveofthemarethesame.请帮我找到这样

php - 修改此正则表达式 : {([^\]]*)} to accept\]

我有这个正则表达式:{([^\]]*)}//anycharacterexcept']'butiwantittoacceptalso'\]'thiscombinationof2chars例子'LoremIpsumissimply]dummytext'shouldreturn=>'LoremIpsumissimply'(andthisonesdoes)but'LoremIpsumissimply\]dummytext'=>shouldreturnallthetextbecausethe']'isescaped希望这是有道理的 最佳答案

php - 正则表达式匹配 @Joe 之类的标签,但不匹配电子邮件地址

在PHP中,我想获取字符串中的所有标签(例如@Joe),但避免使用电子邮件地址(例如dave@example.com)。所以在:@Joehello!@Dave'semailaddressisdave@example.com我只想匹配@Joe和@Dave。我正在尝试的正则表达式是preg_match_all("([^]@[a-zA-Z0-9]+)",$comment,$atMatches);但这只匹配@Dave(在删除前导空格之后)。 最佳答案 您可以使用\B(不是单词边界)escapesequence排除前面有单词(如示例文本中的“

PHP 正则表达式无法正常工作?

我正在尝试制作一个正则表达式来匹配特定条件,但我无法让它按照我想要的方式工作。我当前的正则表达式是'/S(?:[0-9]){2}E(?:[0-9]){2}/i'我希望它满足以下条件一个S至少一位0-9可选数字,可以是0-9一个E至少一位0-9可选数字,可以是0-9如果可能的话,我还希望它能匹配双数而不是单数,我按照互联网上的教程编写了正则表达式,但我觉得我遗漏了一些东西。谢谢... 最佳答案 试试这个:输出:TestingS11E22...Match!TestingS1E2...Match!TestingS11E2...Match!