DMD 0.148 - regular expressions
Derek Parnell
derek at psych.ward
Sun Feb 26 13:09:16 PST 2006
On Mon, 27 Feb 2006 06:46:41 +1100, Tom <Tom_member at pathlink.com> wrote:
> In article <op.s5lhaxyb6b8z09 at ginger.vic.bigpond.net.au>, Derek Parnell
> says...
>>
>> On Mon, 27 Feb 2006 04:58:21 +1100, Walter Bright
>> <newshound at digitalmars.com> wrote:
>>
>>>
>>> "Lars Ivar Igesund" <larsivar at igesund.net> wrote in message
>>> news:dts47r$14c0$1 at digitaldaemon.com...
>>>> I liked the idea (match expressions), just not the operator, and I
>>>> thought
>>>> that was a common opinion...
>>>
>>> if ("regex" ~~ "string")
>>> _match. ...
>>>
>>> The equivalent functionality can now be done with:
>>>
>>> if (m; search("string", "regex"))
>>> m. ...
>>
>> I don't think that is quite correct. This program failed to compile ....
>>
>> void main()
>> {
>> if (m; search("string", "regex")) {}
>> }
>>
>>
>> I got the messages ...
>> test2.d(3): undefined identifier search
>> test2.d(3): function expected before (), not search of type int
>>
>> It turns out that "import std.regexp;" is now required.
>
> This was pretty obvious IMO, don't you think so? :) I mean, if the
> feature was
> removed, of course, you would require 'std.regexp' imported again. I
> think
> Walter omitted it because of that.
Of course it was obvious; that was my point.
Walter had written that
"if ("regex" ~~ "string")"
was functionally equivalent to
"if (m; search("string", "regex"))"
and while that is true, it gives the impression that this was the *only*
change to the new D. I just wanted to point out that the implicit
importing of std.regexp was also removed.
--
Derek Parnell
Melbourne, Australia
More information about the Digitalmars-d
mailing list