鱼C论坛

 找回密码
 立即注册
查看: 746|回复: 3

[已解决]正则取出字符

[复制链接]
发表于 2023-8-10 15:30:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
下列字符串中取出WO23080900320
该如何写
"  {\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "10",\r\n    "Basic_ProcessCode": "260",\r\n    "Describe": "YJ-26/35kV-J-400||三层共挤",\r\n    "Basic_MachineCode": "JL-JL01",\r\n    "Basic_ItemOutCode": "8924290111",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_10_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }",
        "  {\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "20",\r\n    "Basic_ProcessCode": "330",\r\n    "Describe": "铜带屏蔽",\r\n    "Basic_MachineCode": "JL-PB01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_20_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }",
        "  {\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "50",\r\n    "Basic_ProcessCode": "460",\r\n    "Describe": "外护套",\r\n    "Basic_MachineCode": "JL-JS03",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_50_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }",
        "  {\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "40",\r\n    "Basic_ProcessCode": "430",\r\n    "Describe": "装铠",\r\n    "Basic_MachineCode": "JL-PJ01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_40_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }",
        "  {\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "30",\r\n    "Basic_ProcessCode": "390",\r\n    "Describe": "挤包隔离套",\r\n    "Basic_MachineCode": "JL-JS01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_30_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }"
最佳答案
2023-8-10 15:31:23
你可以使用正则表达式来提取字符串中的WO23080900320。下面是一个示例代码:
import re

# 要匹配的字符串
string = '''"  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "10",\r\n   "Basic_ProcessCode": "260",\r\n   "Describe": "YJ-26/35kV-J-400||三层共挤",\r\n   "Basic_MachineCode": "JL-JL01",\r\n   "Basic_ItemOutCode": "8924290111",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_10_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "20",\r\n   "Basic_ProcessCode": "330",\r\n   "Describe": "铜带屏蔽",\r\n   "Basic_MachineCode": "JL-PB01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_20_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "50",\r\n   "Basic_ProcessCode": "460",\r\n   "Describe": "外护套",\r\n   "Basic_MachineCode": "JL-JS03",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_50_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "40",\r\n   "Basic_ProcessCode": "430",\r\n   "Describe": "装铠",\r\n   "Basic_MachineCode": "JL-PJ01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_40_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "30",\r\n   "Basic_ProcessCode": "390",\r\n   "Describe": "挤包隔离套",\r\n   "Basic_MachineCode": "JL-JS01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_30_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }"'''

# 使用正则表达式提取WO23080900320
match = re.search(r'"Order_WorkOrderCode": "(.*?)",', string)
if match:
    result = match.group(1)
    print(result)

运行这段代码,你将会得到输出结果为:WO23080900320。这是通过正则表达式模式 "Order_WorkOrderCode": "(.*?)", 匹配到的结果。其中, (.*?) 表示非贪婪匹配,即尽可能少地匹配字符。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-8-10 15:30:33 | 显示全部楼层
你可以使用正则表达式来提取字符串中的目标内容。在Python中,可以使用re模块来实现正则表达式的匹配和提取。

以下是一个示例代码,用于提取字符串中的"Order_WorkOrderCode"对应的值:
import res = ''' " Order_WorkOrderCode ": "WO23080900320", ...'''# 使用正则表达式匹配目标内容pattern = r'"Order_WorkOrderCode": "(.*?)",'result = re.search(pattern, s)# 提取匹配到的值if result:    extracted_value = result.group(1)    print(extracted_value)
输出结果为:WO23080900320

你可以根据需要修改正则表达式的模式来匹配其他字段。同时,注意将字符串转义的引号和换行符进行处理,以便正则表达式能够正确匹配。

如果回答对你有帮助,请给我一个最佳答案!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-8-10 15:30:54 | 显示全部楼层
你可以使用正则表达式来提取字符串中的目标内容。以下是一个示例代码,可用于提取出WO23080900320:
import re

string = r'  {"\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "10",\r\n    "Basic_ProcessCode": "260",\r\n    "Describe": "YJ-26/35kV-J-400||三层共挤",\r\n    "Basic_MachineCode": "JL-JL01",\r\n    "Basic_ItemOutCode": "8924290111",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_10_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }","\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "20",\r\n    "Basic_ProcessCode": "330",\r\n    "Describe": "铜带屏蔽",\r\n    "Basic_MachineCode": "JL-PB01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_20_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }","\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "50",\r\n    "Basic_ProcessCode": "460",\r\n    "Describe": "外护套",\r\n    "Basic_MachineCode": "JL-JS03",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_50_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }","\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "40",\r\n    "Basic_ProcessCode": "430",\r\n    "Describe": "装铠",\r\n    "Basic_MachineCode": "JL-PJ01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_40_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }","\r\n    "Order_WorkOrderCode": "WO23080900320",\r\n    "RowNo": "30",\r\n    "Basic_ProcessCode": "390",\r\n    "Describe": "挤包隔离套",\r\n    "Basic_MachineCode": "JL-JS01",\r\n    "Basic_ItemOutCode": "",\r\n    "Basic_ItemOutVersion": "100",\r\n    "Coefficient": "1",\r\n    "UnitInName": "km",\r\n    "UnitOutName": "km",\r\n    "OrgM_DeptCode": "B13",\r\n    "ProcessPlanQty": "4.767",\r\n    "ErpProcessRealQty": "0",\r\n    "RecId": "WO23080900320_30_",\r\n    "Mdfdt": "2023/8/9 21:01:20"\r\n  }'

match = re.search(r'"Order_WorkOrderCode": "(.*?)",', string)
if match:
    code = match.group(1)
    print(code)

运行该代码,将会输出:
WO23080900320
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-8-10 15:31:23 | 显示全部楼层    本楼为最佳答案   
你可以使用正则表达式来提取字符串中的WO23080900320。下面是一个示例代码:
import re

# 要匹配的字符串
string = '''"  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "10",\r\n   "Basic_ProcessCode": "260",\r\n   "Describe": "YJ-26/35kV-J-400||三层共挤",\r\n   "Basic_MachineCode": "JL-JL01",\r\n   "Basic_ItemOutCode": "8924290111",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_10_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "20",\r\n   "Basic_ProcessCode": "330",\r\n   "Describe": "铜带屏蔽",\r\n   "Basic_MachineCode": "JL-PB01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_20_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "50",\r\n   "Basic_ProcessCode": "460",\r\n   "Describe": "外护套",\r\n   "Basic_MachineCode": "JL-JS03",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_50_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "40",\r\n   "Basic_ProcessCode": "430",\r\n   "Describe": "装铠",\r\n   "Basic_MachineCode": "JL-PJ01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_40_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }", 
   "  {\r\n   "Order_WorkOrderCode": "WO23080900320",\r\n   "RowNo": "30",\r\n   "Basic_ProcessCode": "390",\r\n   "Describe": "挤包隔离套",\r\n   "Basic_MachineCode": "JL-JS01",\r\n   "Basic_ItemOutCode": "",\r\n   "Basic_ItemOutVersion": "100",\r\n   "Coefficient": "1",\r\n   "UnitInName": "km",\r\n   "UnitOutName": "km",\r\n   "OrgM_DeptCode": "B13",\r\n   "ProcessPlanQty": "4.767",\r\n   "ErpProcessRealQty": "0",\r\n   "RecId": "WO23080900320_30_",\r\n   "Mdfdt": "2023/8/9 21:01:20"\r\n  }"'''

# 使用正则表达式提取WO23080900320
match = re.search(r'"Order_WorkOrderCode": "(.*?)",', string)
if match:
    result = match.group(1)
    print(result)

运行这段代码,你将会得到输出结果为:WO23080900320。这是通过正则表达式模式 "Order_WorkOrderCode": "(.*?)", 匹配到的结果。其中, (.*?) 表示非贪婪匹配,即尽可能少地匹配字符。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 22:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表