Return the text within quotes in string argument. >>> parse_string_content('1 "foo %d bar" 2') 'foo %d bar' >>> parse_string_content('1 foobar 2') '' >>> parse_string_content('1 "bar" 2') 'bar' >>> parse_string_content('1 "foo" 2 "bar" 3') 'foobar' >>> parse_stri
(argument)
| 195 | |
| 196 | |
| 197 | def parse_string_content(argument): |
| 198 | """Return the text within quotes in string argument. |
| 199 | |
| 200 | >>> parse_string_content('1 "foo %d bar" 2') |
| 201 | 'foo %d bar' |
| 202 | >>> parse_string_content('1 foobar 2') |
| 203 | '' |
| 204 | >>> parse_string_content('1 "bar" 2') |
| 205 | 'bar' |
| 206 | >>> parse_string_content('1 "foo" 2 "bar" 3') |
| 207 | 'foobar' |
| 208 | >>> parse_string_content('1 "foo" 2 " " "bar" 3') |
| 209 | 'foo bar' |
| 210 | >>> parse_string_content('""') |
| 211 | '' |
| 212 | >>> parse_string_content('') |
| 213 | '' |
| 214 | >>> parse_string_content('1 2 3') |
| 215 | '' |
| 216 | """ |
| 217 | assert type(argument) is str |
| 218 | string_content = "" |
| 219 | in_string = False |
| 220 | for char in normalize(escape(argument)): |
| 221 | if char == "\"": |
| 222 | in_string = not in_string |
| 223 | elif in_string: |
| 224 | string_content += char |
| 225 | return string_content |
| 226 | |
| 227 | |
| 228 | def count_format_specifiers(format_string): |