-2

我有 2 个正则表达式?我不明白。我可以用 PHP 或 JavaScript 来做。

第一个是,

php > echo preg_replace("/o?/","X","bar");
XbXaXrX

> "bar".replace(/(o?)/g,"X")
'XbXaXrX'

第二个是,

php > echo preg_replace("/(foo)?/","X","foo");
XX

> "foo".replace(/(foo)?/g,"X")
'XX'

谢谢,

4

1 回答 1

0

问号只是表示之前的 0 或 1 倍。

如果"bar".replace(/(o?)/g,"X")它会替换所有o并且什么都没有,那么在每个字母之后没有任何东西被X替换。

万一"foo".replace(/(foo)?/g,"X")它用X替换了foo,又将下一个替换为X

我希望这会有所帮助。

于 2013-11-03T11:55:20.790 回答