Elixir 正則表達(dá)式

2023-12-16 20:46 更新

Elixir中最常用的印記是?~r?,用于創(chuàng)造正則表達(dá)式:

# A regular expression that matches strings which contain "foo" or "bar":
iex> regex = ~r/foo|bar/
~r/foo|bar/
iex> "foo" =~ regex
true
iex> "bat" =~ regex
false

Elixir提供Perl兼容的正則表達(dá)式(regexes),由PCRE庫(kù)實(shí)現(xiàn).正則也支持修飾符.例如,修飾符?i?使得正則表達(dá)式對(duì)大小寫(xiě)不敏感:

iex> "HELLO" =~ ~r/hello/
false
iex> "HELLO" =~ ~r/hello/i
true

查看?Regex?模塊以獲得更多關(guān)于正則表達(dá)式的修飾符和操作的信息.

目前,所有的例子都用?/?來(lái)包圍正則表達(dá)式.然而印記支持8種分隔符:

~r/hello/
~r|hello|
~r"hello"
~r'hello'
~r(hello)
~r[hello]
~r{hello}
~r<hello>

支持不同的分隔符的原因是可以更好地適應(yīng)不同的印記.例如,使用括號(hào)作為分隔符可能會(huì)和正則中的括號(hào)搞混.然而,括號(hào)對(duì)于其它的印記可能很好用,比如我們將看到的.


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)