我正在开发一个PHP脚本,它从一个电影列表中获取 webservice和store'em到数据库中。
没什么特别的, 我现在要解决的唯一问题是排序标题这是一个标题 从通常的' '/' An '/' A '剥离(必要时)电影。
e.g。
应该成为
这很简单,但考虑到我在正则表达式领域的无聊,我正在呼唤帮助。 希望我清楚自己。如果您发现自己有疑问,请要求澄清。
答案 0 :(得分:2)
你可以尝试
$titles = array("The Dark Knight","An Education","A Separation");
$words = array('a','the','an');
$regex = '/\b^(' . implode('|', $words) . ')\b/i' ;
echo "<pre>";
foreach ( $titles as $title ) {
echo preg_replace($regex, '', $title), PHP_EOL;
}
输出
Dark Knight
Education
Separation
答案 1 :(得分:0)
试试这个:
^(The|An|A) (.+)$
使用\2
返回没有明确文章的电影片名,例如Dark Knight
或使用\2, \1
返回Dark Knight, The