input,onkeyup,正则规则应该如何写

2021-09-03 08:53:41 +08:00
 Glink

举例有一串字符串: [挖草 XX123 ] abc.

下面??的正则内容需要怎么写才能精确匹配到 abc.
迫于水平,望各位大佬解惑。谢谢

onkeyup="this.value=this.value.replace (??)

1362 次点击
所在节点    JavaScript
17 条回复
cheese
2021-09-03 09:07:24 +08:00
你到底要匹配啥?小写英文字符?
Glink
2021-09-03 09:10:24 +08:00
@cheese 感谢回复,例如我复制了一串字符串 [挖草 XX123] abc. 需要粘贴到 input,利用 Onkeyup,只需要留下 abc.
InDom
2021-09-03 09:14:00 +08:00
/\[挖草 XX123 \] (abc)\./

这个可以
b1iy
2021-09-03 09:14:40 +08:00
(?<=\[.*\]\s+)[\w\.]+

这个?
Glink
2021-09-03 09:18:59 +08:00
@InDom 我疏忽了一点, [挖草 XX123] 这个是随机的,中文英文数字的组合
Glink
2021-09-03 09:21:30 +08:00
@b1iy 好像不行
AreYou0k
2021-09-03 09:22:48 +08:00
直接 split("]")行吗?
Glink
2021-09-03 09:51:55 +08:00
@AreYou0k 水平有限不知道如何实现, [] 也是中文的字符,好像 V2EX 直接转化了
zxcslove
2021-09-03 09:54:33 +08:00
整理一下,就是要保留任意字符串中结尾部分的英文字符串?
Glink
2021-09-03 09:56:23 +08:00
@zxcslove 是的,复制了[挖草 XX123 ] abc. (后面有个点号)这个字符串,粘贴到 input,只保留 abc. 谢谢你
zxcslove
2021-09-03 09:58:28 +08:00
不比客气,我就是个翻译
renmu123
2021-09-03 09:59:49 +08:00
split (']')[1]
Glink
2021-09-03 10:05:29 +08:00
@renmu123 水平有限,需要怎么实现?谢谢
cpstar
2021-09-03 11:40:26 +08:00
onkeyup 时间不是太好,onblur 好一些,个人判断

至于正则这块,甭管是半角的方括号还是全角的方括号,replace 的目的是把方括号(含)的内容全都替换掉么?
this.value.replace(/\[.*\]/,'')
maplerecall
2021-09-03 11:50:52 +08:00
楼上正则没问题,要中文方括号自行替换一下,另外如果只粘贴的话使用 onpaste 或者 oninput,onblur 得点下其它地方才能生效不太高效
Glink
2021-09-03 12:17:54 +08:00
@cpstar 可以了,谢谢大佬。
Glink
2021-09-03 12:18:17 +08:00
@maplerecall 水平有限,我先了解看看,谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/799587

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX