string_parser#
提取并转换常见字符串为Python对象。
从简单的数据类型如布尔值、整数和浮点数,到更复杂的数据类型如JSON、YAML和列表字符串。
类
|
从文本中提取布尔值。 |
从文本中提取浮点数值。 |
|
从文本中提取整数值。 |
|
|
从文本中提取JSON字符串 {...} 或 [...] 并将其解析为JSON对象。 |
|
从文本中提取列表 [...] 字符串并将其解析为列表对象。 |
|
所有字符串解析器的基类。 |
从文本中提取YAML字符串并将其解析为YAML对象。 |
- class BooleanParser(*args, **kwargs)[source]#
基础类:
Parser从文本中提取布尔值。
示例:
boolean_parser = BooleanParser() test_input_1 = "True" # or "true" or "...true..." print(boolean_parser(test_input_1)) # Expected to extract True
- class IntParser[source]#
基础类:
Parser从文本中提取整数值。
- Returns:
提取的整数值。
- Return type:
整数
- Raises:
ValueError – 如果输入文本不包含整数
示例:
int_parser = IntParser() test_input_2 = "123" # or "...123..." print(int_parser(test_input_2)) # Expected to extract 123
- class FloatParser[source]#
基础:
Parser从文本中提取浮点数值。
- Returns:
提取的浮点数值。
- Return type:
浮点数
- Raises:
ValueError – 如果输入文本不包含浮点数
示例:
float_parser = FloatParser() test_input_3 = "123.45" # or "...123.45..." print(float_parser(test_input_3)) # Expected to extract 123.45
- class ListParser(add_missing_right_bracket: bool = True)[source]#
基础类:
Parser从文本中提取列表 […] 字符串并将其解析为列表对象。
- Parameters:
add_missing_right_bracket (bool, 可选) – 在列表字符串中添加缺失的右括号。默认为 True。
- Returns:
提取的列表对象。
- Return type:
列表[对象]
- Raises:
ValueError – 如果输入文本不包含列表
示例:
list_parser = ListParser() test_input_4 = 'Some random text before ["item1", "item2"] and more after' print(list_parser(test_input_4)) # Expected to extract ["item1", "item2"]
- class JsonParser(add_missing_right_brace: bool = True)[source]#
基础类:
Parser从文本中提取JSON字符串 {…} 或 […] 并将其解析为JSON对象。
它可以输出字典或列表,因为它们都是有效的JSON对象。
- Parameters:
add_missing_right_brace (bool, optional) – 向JSON字符串中添加缺失的右括号。默认为True。
- Returns:
提取的JSON对象。
- Return type:
联合[字典[str, 对象], 列表[对象]]
- Raises:
ValueError – 如果输入文本不包含JSON对象
示例:
json_parser = JsonParser() json_str = "```json\n{\"key\": \"value\"}\n```" json_obj = json_parser(json_str) print(json_obj) # Expected to extract {"key": "value"}
- class YamlParser[source]#
基础类:
Parser从文本中提取YAML字符串并将其解析为YAML对象。
- Returns:
提取的YAML对象。
- Return type:
JSON_PARSER_OUTPUT_TYPE
- Raises:
ValueError – 如果输入文本不包含YAML对象
示例:
yaml_parser = YamlParser() yaml_str = "```yaml\nkey: value\n```" yaml_obj = yaml_parser(yaml_str) print(yaml_obj) # Expected to extract {"key": "value"}