On 31Dec2015 18:38, MRAB <pyt...@mrabarnett.plus.com> wrote:
On 2015-12-31 18:18, otaksoftspamt...@gmail.com wrote:
I need to check a string over which I have no control for the first 2 non-white 
space characters (which should be '[{').

The string would ideally be: '[{...' but could also be something like
'  [  {  ....'.

Best to use re and how? Something else?

I would use .split and then ''.join:

''.join(' [ { ....'.split())
'[{....'

This presumes it is ok to drop/mangle/lose the whitespace elsewhere in the string. If it contains quoted text I'd expect that to be very bad.

It might be faster if you provide a maximum for the number of splits:
''.join(' [ { ....'.split(None, 1))
'[{ ....'

Not to mention safer.

I would use lstrip and startswith:

 s = lstrip(s)
 if s.startswith('['):
   s = s[1:].lstrip()
   if s.startswith('{'):
     ... deal with s[1:] here ...

It is wordier, but far more basic and direct.

Cheers,
Cameron Simpson <c...@zip.com.au>
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to