3
text = "This [is] a [fill]-in-the-[blank]"

私は私のためにいくつかの魔法を行うための正規表現を探しています:

new_text = text.gsub(/[magic happens]/, "")

=> "This [] a []-in-the-[]"

私のコードは Ruby ですが、それは大した問題ではないと思います。

4

3 に答える 3

6

次のようなものが機能します。

text = "This [is] a [fill]-in-the-[blank]"
text.gsub(/\[.+?\]/, '[]')
#=> "This [] a []-in-the-[]"
于 2013-03-14T21:44:42.250 に答える
3
text = "This [is] a [fill]-in-the-[blank]"

text.gsub(/(?<=\[).+?(?=\])/, "")

また

text.gsub(/(?<=\[)[^\]]+?(?=\])/, "")
于 2013-03-14T21:44:28.573 に答える
2

テストケースを考慮して、 Rubularを使用してこれをプロトタイプしました-> http://rubular.com/r/TgdjOtc4Ruここから、一致または類似のものを削除できます。

[5] pry(main)> text = "This [is] a [fill]-in-the[blank]"
=> "This [is] a [fill]-in-the[blank]"
[6] pry(main)> text.gsub(/\[(\w+)\]/) { |match| "[]" }
=> "This [] a []-in-the[]"

おそらくもっときれいな方法があります:-)

于 2013-03-14T21:51:30.273 に答える