PHP代码替换whit正则表达式


PHP Code replace whit Regular expressions

我有我的系列网站,通常所有系列都按季节和剧集划分,我有以下字符串:精神主义者S05E14

where **S05E14** is like **Episode 14 Season 05**我需要更改表达式:

**S05E14** 
   for 
**05x14**

此外,对于任何一季和一集,我都会删除"S",并将"E"替换为"x"

我如何使用正则表达式或其他方法来实现这一点?

您可以使用:

$repl = preg_replace('/S('d+)E('d+)/i', '$1x$2', 'S05E14');

代码演示

echo preg_replace( '/S('d+)E('d+)/', ''1x'2', $str );

Codepad上的链接。

没有正则表达式的2种方法

$e = 'S05E14';
echo implode( 'x', explode( 'E', substr( $e, 1 ) ) );
echo str_replace( array( 'S', 'E' ), array( '', 'x' ), $e );

试试这个:

$string_val="The Mentalist S05E14";
$data = explode(' ', $text);
$count = count($data);
$last_word = $data[$count-1];
$newStr = str_replace("S", "", $last_word);
$newStr = str_replace("E", "x", $newStr);