http://www.perlmonks.org?node_id=326146


in reply to Re: This looks like someone sneezed and hit the keyboard
in thread This looks like someone sneezed and hit the keyboard

use the /x modifier on the regex, which lets you throw in whitespace for formatting without screwing up semantics

... with one significant caveat: spaces lose their semantics.

The RE /foo bar/ is not the same as /foo bar/x. The latter is equivalent to /foobar/. And there is a space in the OP's RE, which will therefore be incorrect if /x is blindly applied.

The choices are either to escape the space with a backslash (which is difficult to read, especially if the backslash-space winds up at the end of a line) or replace it with \s, which is not semantically equivalent (it can match tabs or newlines as well). There is always [\ ] but I'm not sure it's a win.

  • Comment on Re:x2 This looks like someone sneezed and hit the keyboard (whitespace semantics in /x REs)
  • Select or Download Code