简体   繁体   中英

Regex expression to remove specific characters

I'm currently trying to get into regex expressions - at the moment I want to write one which acts as follows:

import regex
a = '[[0.1 0.1 0.1 0.1]\n [1.2 1.2 1.2 1.2]\n [2.3 2.3 2.3 2.3]\n [3.4 3.4 3.4 3.4]]'
a_transformed = re.sub(regex_expression, a)

# a_transformed = '0.1 0.1 0.1 0.1 1.2 1.2 1.2 1.2 2.3 2.3 2.3 2.3 3.4 3.4 3.4 3.4'

Basically I only need to sub all occurences of (,n,[,]), but currently I'm struggling to get the expression right.

Thanks for the help in advance!

You can try the following:

>>> re.sub(r'[^\d. ]', '', a)
'0.1 0.1 0.1 0.1 1.2 1.2 1.2 1.2 2.3 2.3 2.3 2.3 3.4 3.4 3.4 3.4'

Here '[^\d. ]' '[^\d. ]' means anything except a digit, '.' and space like characters. ^ inside [] means negate this character group.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM