如果我有专栏,请说:
paths
路径保存文件的绝对路径。
如果我想,要从记录的开头和结尾删除n个字符,对于整个路径列 - 这可能吗?
编辑 - 示例:
让我们说路径中有记录如下:
C:\Users\Alex\Documents\Files\File-1.txt
C:\Users\Alex\Documents\Files\File-2.txt
C:\Users\Alex\Documents\Files\File-3.txt
C:\Users\Alex\Documents\Files\File-4.txt
我想将记录更新为:
Users\Alex\Documents\Files\File-1
Users\Alex\Documents\Files\File-2
Users\Alex\Documents\Files\File-3
Users\Alex\Documents\Files\File-4
基本上从整个列的开头和结尾删除n个字符。
答案 0 :(得分:0)
一般的正则表达式解决方案是:
^(?:.{3})(.*)(?:.{4})$
# that is match exactly three chars in the beginning (non-capturing group)
# match everything up to the end of the string
# but as .* is sweet-tempered...
# it gives back the four characters in the end ($)
# your match is in the first group
答案 1 :(得分:0)
答案 2 :(得分:-1)
标记为SQL
时隐含标准SQL:
使用SQL标记的问题的答案应该使用ANSI SQL。
不需要比SUBSTRING更复杂的东西,你只需要计算你想要剥离的字符数:
SUBSTRING(path FROM 4 FOR CHARACTER_LENGTH(path)-7)
这也在PostgreSQL中按原样运行:)