String in question,
"2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - - "I want to capture the 2nd occurrence of "-2". I came up with "[^\d]-\d" but it'll return " -2" (preceded by a space) not "-2"
TIA
BCC5.82/BCC7.3
xHarbour/Harbour
"2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - - "  c  := "2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - - "
  n  := AtNum( "-2", c, 2 ) // find '-2' in c 2nd occurrence
  ? n   // 34
  ? SubStr( c, n  ) // "-21 15 -- ""-([0-9]{1,})"
@Rao,
Thanks for the tip. I didn't know about AtNum() but regular expression kinda fascinates me now. I'm parsing a tax table and I find regular expression allows me to write neat and tidy code and regex power is awesome. Though it's kinda dizzying as it's another new thing to learn ![]()
@Lailton,
I just noticed I made a typo. A thousand apologies, the result that I'm after is "-2" not "21". Sorry for the confusion to anyone who's reading this thread. But your expression seems better than mine I'll test it out. Thanks.
what´s the result that u wanna
"2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - - "
is ?
-26
-21
lailton.webmaster wrote:what´s the result that u wanna
"2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - - "
is ?
-26
-21
2601-2650 21 - - - - - - - - - - -21 15 - - - - - - - - -
3801-3850 146 54 48 42 37 31 25 19 13 - - -146 136 93 87 82 76 70 64 58 52 47
3851-3900 152 58 52 46 40 34 28 23 17 11 - -152 142 132 91 85 79 73 68 62 56 50
3901-3950 158 128 55 49 44 38 32 26 20 14 - -158 148 138 128 89 83 77 71 65 59 54
3951-4000 164 134 59 53 47 41 35 30 24 18 12 -164 154 144 134 92 86 80 75 69 63 57
4001-4050 170 140 130 56 51 45 39 33 27 21 16 10 170 160 150 140 130 90 84 78 72 66 61Hua,
local er :="([-][0-9])"
that may work
Hey, you're very close Antonio
. Now just need to tweak it further to make it ignore hyphen and digit in column 5 & 6.
Thank you.
Hi,
try with
local er :="(\ [-][0-9])"
regards
Marcelo
Thanks Marcelo. But that didn't do it
hua wrote:Thanks Marcelo. But that didn't do it
([ ]?[-][0-9])