Random_Walk has given a good explanation.
However, maybe the following line could help clear the that line a bit.
print $1,$/ if m{\s+?(\d+?)\/total$};
The above line shows clearly that after "total", what you have is "$" that indicate the end of the string and not "$/". The / that follows "$" is the second "slash" of the match operator i.e
In addition to all that, using the module "YAPE::Regex::Explain" the regular expression matches could be explain as thus:m// ^ This one
The regular expression: (?-imsx:\s+?(\d+?)/total$) matches as follows: NODE EXPLANATION ---------------------------------------------------------------------- (?-imsx: group, but do not capture (case-sensitive) (with ^ and $ matching normally) (with . not matching \n) (matching whitespace and # normally): ---------------------------------------------------------------------- \s+? whitespace (\n, \r, \t, \f, and " ") (1 or more times (matching the least amount possible)) ---------------------------------------------------------------------- ( group and capture to \1: ---------------------------------------------------------------------- \d+? digits (0-9) (1 or more times (matching the least amount possible)) ---------------------------------------------------------------------- ) end of \1 ---------------------------------------------------------------------- /total '/total' ---------------------------------------------------------------------- $ before an optional \n, and the end of the string ---------------------------------------------------------------------- ) end of grouping ----------------------------------------------------------------------
In reply to Re^3: extract the value before a particualr string
by 2teez
in thread extract the value before a particualr string
by nanban
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |