Path: csiph.com!aioe.org!.POSTED!not-for-mail From: =?UTF-8?Q?Arne_Vajh=c3=b8j?= Newsgroups: comp.lang.java.programmer Subject: Re: regex replaceAll? Date: Fri, 2 Mar 2018 13:00:13 -0500 Organization: Aioe.org NNTP Server Lines: 43 Message-ID: References: <4a800440-39fe-4684-8369-e6a4e6b9d79f@googlegroups.com> <44c665e1-e965-4e9b-8aa0-72aa20607e63@googlegroups.com> <8c677118-8115-409d-8d3b-396e54b063ae@googlegroups.com> NNTP-Posting-Host: PBuS014lhzVyHjLbXmo/ZQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 X-Notice: Filtered by postfilter v. 0.8.3 Content-Language: en-US Xref: csiph.com comp.lang.java.programmer:38108 On 3/1/2018 8:33 PM, Kiwi User wrote: > On Thu, 01 Mar 2018 19:49:26 -0500, Arne Vajhøj wrote: >> On 3/1/2018 7:43 PM, Kiwi User wrote: >>> Another way to test regexes may help: use an online regex test tool >>> like this one: >>> >>> http://www.regexplanet.com/advanced/java/index.html >>> >>> It helps because it: >>> - tests an expression without you writing anything except the regex - >>> lets you submit a set of test strings and run repeated tests against >>> them >>> - has check boxes for making caseless comparisons, etc. >> >> Yes. >> >> But if the regex is so complicated/unreadable that it is not obvious >> whether it works or not, then I would question whether regex is the >> right choice. >> > Yes - but surely that should go without saying. Choosing the right tool > for a job is an essential part of the programmer's trade. > > The point I was trying to make wasn't specifically about the regex in > question, but that there are often more convenient ways of testing and/or > developing regexes than trying to do it in situ. Yes. But my argument is that: - the whole point of regex is that it is a compact and easy to read way to do some advanced text stuff - if the regex is long and not easy to read then something else is probably more easy to read - having to use tools to test if the regex does what one think it does seems to be a good indication that it is not easy to read Sometimes regex can be combined with a break up in code. Splitting string without regex and then use simple regex on some of the parts or doing a high level split with simple regex and more detailed split using code are sometimes good choices. Arne