String matching: Difference between revisions
Content added Content deleted
mNo edit summary |
(→{{header|Elixir}}: add Optional requirements) |
||
Line 860: | Line 860: | ||
=={{header|Elixir}}== |
=={{header|Elixir}}== |
||
The String module has functions that cover the base requirements. |
The String module has functions that cover the base requirements. |
||
<lang elixir> |
<lang elixir>s1 = "abcd" |
||
s1 = "abcd" |
|||
s2 = "adab" |
s2 = "adab" |
||
s3 = "ab" |
s3 = "ab" |
||
Line 869: | Line 868: | ||
String.starts_with?(s2, s3) |
String.starts_with?(s2, s3) |
||
# => false |
# => false |
||
⚫ | |||
⚫ | |||
⚫ | |||
# => true |
|||
String.ends_with?(s1, s3) |
String.ends_with?(s1, s3) |
||
Line 875: | Line 879: | ||
# => true |
# => true |
||
⚫ | |||
# Optional requirements: |
|||
⚫ | |||
Regex.run(~r/#{s3}/, s1, return: :index) |
|||
⚫ | |||
# => |
# => [{0, 2}] |
||
Regex.run(~r/#{s3}/, s2, return: :index) |
|||
</lang> |
|||
# => [{2, 2}] |
|||
Regex.scan(~r/#{s3}/, "abcabc", return: :index) |
|||
# => [[{0, 2}], [{3, 2}]]</lang> |
|||
=={{header|Emacs Lisp}}== |
=={{header|Emacs Lisp}}== |