SQLite:修剪用法

时间:2016-05-31 06:50:27

标签: sqlite trim

我的目标是从给定的网址中提取域名。

为此,我使用以下内容:

WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement el = wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector(".value.ng-binding")));
String text = el.getText();
System.out.println(text);

我得到的结果是:

select distinct ltrim(rtrim('https://www.youtube.com/watch?v=...', '/'), 'https://')

预计会有以下情况:

www.youtube.com/watch?v=...

如何实现上述目标?

注意:

我注意到www.youtube.com 函数的工作方式与我预期的不同。

  • trim返回相同的字符串,没有任何更改。
  • 尝试仅按select distinct ltrim('https://www.youtube.com/watch?v...', 'youtu')修剪斜杠也会返回相同的字符串。

欢迎任何解释。

2 个答案:

答案 0 :(得分:2)

修剪仅删除字符串开头和/或结尾的给定字符。 你需要substr和instr。 (https://www.sqlite.org/lang_corefunc.html

但最好的选择可能是在将代码保存到数据库之前将其修复到代码中。

答案 1 :(得分:0)

最后我没有使用trim,而是使用了substr。

以下工作:

select replace(substr(substr(<url>, instr(<url>, '//')+2),0,instr(substr(<url>, instr(<url>, '//')+2),'/')),'.','')

select replace(substr(substr(<url>, instr(<url>, '//www.')+6),0,instr(substr(<url>, instr(<url>, '//www.')+6),'/')),'.','')