楼主: Ciciccccccccc
1790 7

[编程问题求助] 如何去掉字符串最后一个特定字符 [推广有奖]

  • 10关注
  • 7粉丝

硕士生

72%

还不是VIP/贵宾

-

威望
0
论坛币
4 个
通用积分
21.0415
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
7186 点
帖子
100
精华
0
在线时间
219 小时
注册时间
2015-4-3
最后登录
2024-6-6

楼主
Ciciccccccccc 发表于 2022-9-17 22:24:23 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
最近在处理专利IPC号的数据,碰到一些问题,不知道怎么写代码,求大神帮忙
数据如下:
num   IPC
1       B01D53/86(2006.01)I;B01D53/56(2006.01)I
2       B01J23/30(2006.01)I;B01J35/10(2006.01)I;
3       B01J23/92(2006.01)I;B01J23/30(2006.01)I;B01J38/02(2006.01)I;B01J38/04(2006.01)I;

有两行数据,第二行和第三行均以“;”结尾,想把这个结尾的“;”去掉,但是保留中间的“;”。
这样的数据一共有好几万,没法一一筛选,用replace value=subinstr(value,";","",.)的话,会把中间的;也删掉。
求大神帮忙解答!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:最后一个 字符串 subinstr replace value

沙发
917968079 发表于 2022-9-18 10:10:01
试一下
  1. gen a = ipc
  2. replace a=usubstr(ipc,1,length(ipc)-1) if strmatch(ipc,"*;")==1
复制代码

藤椅
Ciciccccccccc 发表于 2022-9-18 19:31:45
917968079 发表于 2022-9-18 10:10
试一下
非常感谢~~

板凳
黃河泉 在职认证  发表于 2022-9-18 21:12:01
也可试试
  1. // Leonardo Guizzetti 建议的
  2. gen want = ustrregexrf(IPC, "^(.*);$", "$1")
复制代码

报纸
黃河泉 在职认证  发表于 2022-9-19 10:13:00
这个更简洁:
  1. // William Lisowski 建议的
  2. replace IPC = ustrregexrf(IPC, ";$", "")
复制代码

地板
Ciciccccccccc 发表于 2022-10-2 20:24:44
黃河泉 发表于 2022-9-19 10:13
这个更简洁:
非常感谢黄老师

7
Ciciccccccccc 发表于 2022-10-2 20:26:28
黃河泉 发表于 2022-9-18 21:12
也可试试
谢谢黄老师

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-8 07:52