gpt4 book ai didi

regex - SQLite:如何拆分列

转载 作者:行者123 更新时间:2023-12-03 19:40:09 24 4
gpt4 key购买 nike

我有一列包含两个名称,我想将其提取到两个单独的列surname1surname2中(我既不需要名称也不需要首字母(例如N.))。

该列的示例性内容是:

AwyeEaef2012 MS101 N.Lopez-O.Lorenzi.txt


-Lopez和Lorenzi是我们在此行中需要的两个人。

我的情况有一个好处,那就是名字总是在第一个点( .)之后,并在破折号( -)之前结束,而第二个名字在第二个点之后并且在第三个点之前结束,并且 txt.txt)。

我知道如何编写正则表达式,并使用 LIKE检查该列是否包含某些特定的姓氏,但不是相反的方式-如何读取姓氏并将其写入两个新列。

该列中的几行如下所示:

WyeEaef MN2014 MS401 N.Lopez-O.Lorenzi.txt
AwyufEQ WCH2014 OS401 N.Lorenzi-O.Lopez.txt
THAFa5u WCH2014 LS107 N.Larry-O.Lolly.txt


所以模式就像我提到的 *.Name1-[A-Z].Name2.txt

其中*最多为30个大写字母和小写字母和数字

可以用这种方式进行处理:换句话说,我们需要将其划分为子串,并用点除。第一个子串是浪费,第二个不带最后两个字符(破折号和大写字母,例如-O)是名字,第三个是substring是第二个名称,第四个是另一种浪费(以前的文件格式)。

我想要一个三列的输出:
initialColumn,firstName,secondName

最佳答案

我个人不喜欢用Excel中的公式编写的变通办法,但将来可能对某人有用。

=MID(A1;FIND(".";A1;1)+1;FIND(".";A1;FIND(".";A1;1)+1)-FIND(".";A1;1)-3)


我很惊讶Excel可以在瞬间完成处理约50万条记录的工作。

关于regex - SQLite:如何拆分列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30696692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com