Elixir 正则表达式

2023-12-16 20:46 更新

Elixir中最常用的印记是​~r​,用于创造正则表达式:

# 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兼容的正则表达式(regexes),由PCRE库实现.正则也支持修饰符.例如,修饰符​i​使得正则表达式对大小写不敏感:

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

查看​Regex​模块以获得更多关于正则表达式的修饰符和操作的信息.

目前,所有的例子都用​/​来包围正则表达式.然而印记支持8种分隔符:

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

支持不同的分隔符的原因是可以更好地适应不同的印记.例如,使用括号作为分隔符可能会和正则中的括号搞混.然而,括号对于其它的印记可能很好用,比如我们将看到的.


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号