草庐IT

php - 对所有特殊字符使用 preg_split

我想在每次找到特殊字符时拆分一个字符串。我这样做了:preg_split("[\\W]",$str);但这仍然允许下划线(也许更多?)是否可以只说允许a-zA-Z和数字并拆分任何不是其中之一的东西? 最佳答案 您刚刚回答了您的问题:preg_split('~[^a-z0-9]~i',$str);参见thisregexdemo[^a-z0-9]negated字符类匹配除a-z(和A-Z由于i修饰符)而不是数字(用0-9定义)。另一种方法是在否定字符类中使用POSIX[:alnum:]字符类:'~[^[:alnum:]]~'参见rege

php - Laravel split in blade 模板嵌套 foreach

我检索了一个由空格分隔的ID数组,如下所示@foreach($user_notify->user_notify_divisionsas$user_notify){{$user_notify}}@endforeach那么$user_notify的值就是ID$user_notify=2345我有一个数据库表division_listiddivision_name1工業製品卸・小売2繊維・衣料製造3繊維・衣料卸・小売4食品製造5食品卸・小売6医薬品製造现在如何使用上面的id字符串获取division_name谢谢大家! 最佳答案 在lar

php - 拆分嵌套数组以在 php 中使用

这个问题在这里已经有了答案:Restructuremultidimensionalarrayofcolumndataintomultidimensionalarrayofrowdata[duplicate](3个答案)关闭5年前。我有一个数组,想拆分它们。可能是两个,树或更多array(name=>array(0=>asda.jpg,1=>kewj.jpg),type=>array(0=>jpg,1=>jpg),size=>array(0=>2133,1=>2222))我想拆分成两个数组或者更多array(name=>asd.jpg,type=>jpg,size=>2133)和arra

php - 在引号中用逗号分隔字符串中的逗号分隔电子邮件地址

假设我有以下用逗号分隔的电子邮件地址:$addrList='Kevin.Brine@pppg.com,Robert.Thomas@pppg.com,"Guice,Doug"';我需要以下结果:[0]=>Kevin.Brine@pppg.com[1]=>Robert.Thomas@pppg.com[2]=>"Guice,Doug"看起来相当简单,但引号中的逗号确实让我开始尝试使用preg_match_all或preg_split寻找解决方案。此外,我们也应该适应使用单引号作为名称的电子邮件,即:'smith,tom' 最佳答案 str

php - 如何逐字符拆分字符串,注意特殊字符

我正在尝试逐个字符地展开字符串,但我在处理特殊字符时遇到了麻烦。我目前正在使用以下功能:这是输出:Array([0]=>C[1]=>o[2]=>m[3]=>m[4]=>e[5]=>n[6]=>t[7]=>[8]=>�[9]=>�[10]=>a[11]=>[12]=>v[13]=>a[14]=>?)换行符也有同样的问题:输入:“嘿!Oui?”输出:Array([0]=>H[1]=>�[2]=>�[3]=>![4]=>[5]=>[6]=>O[7]=>u[8]=>i[9]=>?)有没有人能解决这个问题?非常感谢。 最佳答案 str_spl

PHP 获取当前文件目录

我想知道是否有可能获得一个文件的完整路径,然后将其拆分就像:回显$currentDir//输出EX:/home/user/public_html/scrips/code/test/ha然后将其拆分为3个目录,因此输出为:/home/user/public_html/scripts这可能吗? 最佳答案 在__DIR__或dirname(__FILE__)获取当前执行文件的目录。您可以选择一条路径并通过字符串操作提升几个级别。$path=implode(DIRECTORY_SEPARATOR,array_slice(explode(DI

PHP - 根据字段值划分多维数组

我有一个初始数组:$arr0=array(0=>array('a'=>1,'b'=>1)1=>array('a'=>2,'b'=>1)2=>array('a'=>3,'b'=>2)3=>array('a'=>4,'b'=>3)4=>array('a'=>5,'b'=>3));我希望根据其成员字段'b'的值将其分成单独的数组,如下所示://$arr1contains$arr0[0]and$arr0[1]becausetheirvalueof'b'is1.$arr1=array(0=>array('a'=>1,'b'=>1)1=>array('a'=>2,'b'=>1));//$arr2c

php preg_split 没有松散的文本,。 : and so forth

我尝试使用preg_split拆分文本,但我没有得到它的正则表达式。例子:Isearch1,regexto:no.Or...yes!应该得到:Array([0]=>I[1]=>search[2]=>1[3]=>,[4]=>regex[5]=>to[6]=>:[7]=>no[8]=>.[9]=>Or[10]=>...[11]=>yes[12]=>!)我尝试了以下代码:preg_split("/([\s]+)/","Isearch1,regexto:no.Or...yes!")结束于:Array([0]=>I[1]=>search[2]=>1,[3]=>regex[4]=>to:[5]=>

php - 正则表达式(特别是 preg_split() PHP)

我在我的PHP应用程序中列出了一些日期,结果如下所示:April2016May2016June2016等我正在尝试使用preg_split将它们格式化为这样:array('April2016','May2016','June2016')我使用在线正则表达式编辑器来确定如何检测4个连续数字,这是我取得的进展:注意:我也删除了所有的空白——理想情况下,如果它只删除超过2个空格的空白会更好,即helloworld不会被改变,但hello世界会。preg_split('/\d\d\d\d/g',preg_replace('!\s+!','',$sidebar_contents));使用上面的方

php - 在不同的字符出现处将字符串转换为数组

考虑我有这个字符串'aaaabbbaaaaaabbbb'我想将其转换为数组以便得到以下结果$array=['aaaa','bbb','aaaaaa','bbbb']如何在PHP中解决这个问题? 最佳答案 PHPcodedemo正则表达式:(.)\1{1,}(.):匹配捕获单个字符。\1:这将包含第一个匹配项\1{1,}:使用匹配字符一次或多次。输出:Array([0]=>Array([0]=>aaaa[1]=>bbb[2]=>aaaaaa[3]=>bbbb)[1]=>Array([0]=>a[1]=>b[2]=>a[3]=>b))或