Power Automate Desktop如何从字符串剥离文本提取数字?
Power Automate Desktop 提取输入字符串中的数字解决方案
具体操作步骤
- 第一步:添加
Display input dialog动作,设置提示文本为「请输入GB单位的容量大小(例如:50GB、100g、200 gb)」,将用户输入内容保存到变量(比如UserInput)。 - 第二步:添加
Extract text using regex动作,在「Input text」中选择刚才的UserInput变量,「Regular expression」填写\d+(\.\d+)?,这个正则会匹配所有整数和小数数字,把提取结果保存到变量(比如ExtractedNumberStr)。 - 第三步:添加
Convert string to number动作,输入ExtractedNumberStr变量,转换后的数字保存到新变量(比如CapacityNumber),这个变量就可以用于后续的计算或操作了。
为什么之前的方法没用?
Trim Text只能指定确切要移除的字符,没法覆盖所有可能的文本(比如用户可能输入GB、gb、G、g甚至带空格的" 150 GB"),所以无法批量清除所有非数字内容。- 直接用
Convert string to number时,因为输入字符串包含非数字字符,程序无法识别有效数字,所以会报错。
补充说明
- 正则
\d+(\.\d+)?的意思:\d+匹配1个及以上数字,(\.\d+)?可选匹配小数点加数字,支持整数和小数输入(比如用户输入"250.5GB"也能提取出250.5)。 - 如果担心用户输入多个数字(虽然场景里不太可能),可以在
Extract text using regex动作里设置「Match occurrence」为「First」,只取第一个匹配的数字。
内容的提问来源于stack exchange,提问作者Anna-Rose
相关产品推荐
相关产品推荐

