2017-06-08 107 views
0

想象一下以下字符串PHP字符串包含然後兩個字符斜線開頭

/en/pages/title-page or /es/pages/title-page 

如何確定該字符串是否有斜槓,則兩個未知字符(總是二),然後又斜槓。然後一旦知道,這些可以從字符串中提取出來。

+0

正則表達式? :) – Jerodev

+0

嘗試使用此https://regex101.com/r/obz7Mw/1 – kRicha

+0

這是從一個網址,是不是?如果網址將*總是*包含語言,則可以使用[substr()](http://nl1.php.net/manual/en/function.substr.php)。 '$ match = substr($ url,1,2);'。 –

回答

2

以下代碼將使用$matches數組的索引1中的語言。否則,如果模式不匹配,數組將爲空。

$matches = null; 
if (preg_match('/^\/([a-zA-Z]{2})\//', '/en/pages/title-page', $matches) === 1) 
    echo $matches[1]; 
else 
    echo 'No language found'; 
+0

\ w匹配:字母,數字,下劃線 – Andreas

+0

@Jerodev @Andreas,'[a-z] {2}'... – kRicha

+0

夠公平的,我更新了我的答案 – Jerodev