Как удалить подстроку, завернутую в косую черту, например & quot; / foo / & quot ;?

Это нубийский вопрос, и я знаю, что это обычный вопрос, но я не нахожу его.
Я пытаюсь удалить подстроку /The Foo/ в строке Word/Word2/The Foo/,
Я знаю, что проблема заключается в слэше, но мне не удается найти, как написать шаблон.

Я старался :

  1. preg_replace( "/(/The Foo/)/", "", $str);
  2. preg_replace( "/The Foo/", "", $str);
  3. str_replace( "/The Foo/", "", $str )

…безуспешно.

0

Решение

Это работает, как и ожидалось, при условии, что вы задаете другой разделитель в регулярном выражении:

str_replace( "/The Foo/", "", $str )
// or using regex, using +  as the delimiter instead of /
preg_replace( "+/The Foo/+", "", $str )

Доказательство: https://3v4l.org/mjXgE

0

Другие решения

str_replace («/ The Foo /», «», $ str), кажется, работает в реальности.

Проблема заключалась в том, что я печатал две отдельные строки без пробелов:

  1. Word/Word2/
  2. The Foo/

Была иллюзия одной строки, но есть две строки.

0

Если я правильно понимаю, вам нужно что-то вроде:

str_replace( "The Foo", "", $str ); //Word/Word2//

или же

str_replace( "/The Foo/", "", $str );//Word/Word2
0
По вопросам рекламы [email protected]