[英]How to split using the regular expressions
為了拆分給定的符號,我最初使用
list($pdf_platform_size, $pdf_capacity ,$pdf_accuracy) = split("[a-z-][a-z-]", $pdf_select_specification);
當給定的字符串是6 x 3m-20t-2kg時,它用來將給定的字符串分成6x3m( $ pdf_platform_size) ,20t( $ pdf_capacity )和2kg( $ pdf_accuracy) 。
但是現在當我升級到PHP 7時,不推薦使用split.preg_split()的用法似乎不起作用。 我嘗試了list($a,$b,$c) = preg_split("/[az-][az-]/", $x);
其中$ x是6 x 3m-20t-2kg
但是沒有得到理想的結果。在這里尋求幫助
如果僅在-
上進行拆分,則不需要正則表達式。 使用explode
代替:
[$a, $b, $c] = explode('-', '6x3m-20t-2kg');
echo $a; // 6x3m
注意:PHP 7.1附帶了速記數組銷毀功能
如前所述,您可以使用explode
,但也可以使用preg_split
$x = '6 x 3m - 20t - 2kg';
list($a,$b,$c) = preg_split("/[-]/", $x);
如果存在空格,則可能需要trim()
結果
如果需要值,可以使用preg_match_all
提取它
$x = '6 x 3m - 20t - 2kg';
preg_match_all('/(\d)+[ ]*x[ ]*(\d)+m[ ]*-[ ]*(\d)+t[ ]*-[ ]*(\d)kg/', $x, $dump);
var_dump($dump);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.