On 30.07.13 07:41, Ben Fritz wrote: > The OP specifically said that valid decimals are "in the form 1.0D0, > or more precisely \d\+\.\d\+D\d\+" so I didn't try stuff like "123." > or ".123".
Wot ... just trust the problem specification? OK, the OP might be a mathematician or engineer, since fortran is mentioned, so you're probably right. But in years gone by, I sometimes wrote regexes for others in a technical department, and the original problem spec almost always had to be tightened, to exclude stuff which hadn't been thought of. > But possibly as in the other thread we need to account for negative numbers? If we change the test text to: 123 123.0 123. -456 0.123 .123 789 then what we had: > > /\v\.@<!<\d+>\.@! also finds -456, but the cursor is on the 4, not the minus sign. If signed integers are also needed, we'd probably have to ditch the precondition, since /\v(-?|\.@<!)<\d+>\.@! introduces an ambiguity which defeats that alternative. (It's rotten regex construction.) This, though, finds "-456", rather than "456": \v(^|[ \t+-])<\d+>\.@! but again finds "123" " 789", as before. Maybe that's OK? Erik -- Remembering is for those who have forgotten. - Chinese proverb -- -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_use" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.