【发布时间】:2020-09-11 07:20:35
【问题描述】:
对不起!这个问题可能相似但不是重复的......
假设我有如下不同大小的字符串:
zinc tab. 25mg №60
vita sip bla b6 50% b6mg №7
5-nok tab. 50mg №50
Blah blah №50
总之,我需要的结果应该如下:
$str1 = "zinc tab"; $str2 = "25mg №60";
$str1 = "vita sip bla b6"; $str2 = "50% b6mg №7";
$str1 = "5-nok tab."; $str2 = "50mg №50";
$str1 = "Blah blah"; $str2 = "№50";
分配的值以数字开头。即从最后一部分开始的数字需要一分为二。
我尝试了implode()、explode()、preg_split()、preg_match() 函数。但是它们以一定的精度分解成几个部分。例如:
$str = 'Bla bla 50% 400mg №4';
$results = preg_split('/[^0-9]/', $str);
print_r($results);
// Also i got same result with explode, implode functions...
//Then also tried with substr functions like that
$str[strlen($string) -2];
//But string indices are not always the same.
我也使用过substr() 函数,但字符串索引并不总是相同。有时它可能会排在倒数第三或第二位。
我需要的结果如下:如果文本末尾的任何单词以数字开头或以№开头,则此时应将其分为两个。像这样:
4 bla bla 40% 50mg №50 should return: 1) 4 bla bla 2) 40% 50mg №50
4 bla bla №50 should resturn 1) 4 bla bla, 2) №50
如何轻松快速地获得这样的结果? 谢谢!
【问题讨论】:
-
爆炸()?有时很简单。
-
没有爆炸将它们全部分成一个数组。我只需要将它一分为二。