(sqlite3)如何将'\n'作为原始字符串进行rtrim?

2024-04-26 18:59:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个名为table1的sqlite表

cur.execute("CREATE TABLE IF NOT EXISTS Table1(ID INTEGER PRIMARY KEY AUTOINCREMENT, URL varchar(500), Title varchar(500))")

URL的数据如下:http://www.site.com/content/\n

我想删除最后一个原始字符串,但此方法失败

^{pr2}$

结果保持不变(ULR:http://www.site.com/content/\n)。“\n”似乎被视为换行符而不是原始字符串,我如何才能将\n rtrim作为原始字符串处理?(以\n结尾的URL将被修剪,而以n结尾的URL将保持不变)


Tags: 字符串comhttpurlexecutesqlitewwwcreate
1条回答
网友
1楼 · 发布于 2024-04-26 18:59:44

声明:

cur.execute("UPDATE Table1 SET URL=rtrim(URL, '\n'), Title=rtrim(Title, '\n')")

对于SQLite来说,它可以很好地工作,它确实会从字符串的末尾删除新行。如果这对您不起作用,那么您的值在末尾没有换行符,或者您没有提交事务。在

产生相同结果的备选方案:

  • 您可以将换行作为参数传入:

    ^{2美元
  • 使用X'...'指定BLOB文本,使用十六进制表示法:

    cur.execute("UPDATE Table1 SET URL=rtrim(URL, X'0A'), Title=rtrim(Title, X'0A')")
    

相关问题 更多 >