簡體   English   中英

用於獲取字符串部分的正則表達

[英]Regular expression for getting string part

我有一些字符串

Shp 1,737 Plenty Rd, Mill Park VIC 3082
560 High St, Preston VIC 3072
217 Mickleham Rd, Tullamarine VIC 3043

從這些我需要“VIC”。 任何人都可以幫我找到使用正則表達式或PHP字符串函數的解決方案 在此輸入圖像描述

這是從excel表中讀取的實際字符串...我希望這些字符串的狀態名稱,如NSW,ACT,VIC

如果它始終是倒數第二個,只需將空格上的字符串拆分並取倒數第二個元素。

preg_match_all('/(?P<state>[A-Z]{2,3})\s\d{4}$/m', $str, $matches);

var_dump($matches['state']);

產量

array(3) {
    [0]=>
    string(3) "VIC"
    [1]=>
    string(3) "VIC"
    [2]=>
    string(3) "VIC"
}

這在多行模式下使用正則表達式來匹配空白字符和4位數郵政編碼之前的2或3個大寫字母。

我稱之為state因為我住在澳大利亞,這些都是澳大利亞各州:)

為了獲得它的價值:

$getvic = substr($myString,-8,-7);

要獲得VIC:

$getvic = substr($myString,-8,-2);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM