我试图用python中的正则表达式做一些相当简单的事......这就是我至少想到的.
我想要做的是匹配字符串中的单词,如果它前面跟着一个空格.如果它位于字符串的开头,则之前不需要空格 - 如果它在结尾处,也不要搜索空格.
例:
"WordA WordB WordC-WordD WordE"
Run Code Online (Sandbox Code Playgroud)
我想要匹配WordA WordB WordE.
我只是想出了这样做的简单方法......
(?<=(?<=^)|(?<=\s))\w+(?=(?=\s)|(?=$))
Run Code Online (Sandbox Code Playgroud)
在我看来,这个简单的问题必须有一个简单的方法....我想我可以刚开始,(?<=\s|^)但似乎不可能,因为"后视需要固定宽度模式".
说我有下表的东西。我想要表中的唯一名称,所以没有重复。插入事物的过程不需要检查具有此名称的事物是否已经存在。
CREATE TABLE things(
id SMALLSERIAL PRIMARY KEY,
name varchar UNIQUE
);
Run Code Online (Sandbox Code Playgroud)
当我插入这样的值时,它会起作用。如果 'desk' 已经在东西里,它就不会被插入。
INSERT INTO things (name)
VALUES ('desk')
ON CONFLICT DO NOTHING;
Run Code Online (Sandbox Code Playgroud)
唯一的问题是 ON CONFLICT DO NOTHING 并不是真的什么都不做。它仍然增加 id 字段的序列。
如果这种情况发生得太频繁,那么 id 序列最终会变得对于字段类型来说太大。
有没有办法防止这种情况发生?
我想用CSS设置d3线元素的样式。对于其他元素,例如“ rect”,“ path”或“ circle”,似乎工作正常,但对于“ line”,我只是无法使其正常工作...
CSS:
.line {
stroke: #000000;
stroke-width: 0.5;
}
Run Code Online (Sandbox Code Playgroud)
js:
d3.select('.container')
.append("line")
.attr("x1", "0")
.attr("x2", "100")
.attr("y1", "0")
.attr("y2", "100")
//.attr("style", "stroke:#000000;stroke-width:0.5")
Run Code Online (Sandbox Code Playgroud)
如果我在最后一行删除注释,它可以工作,但是我不想使用内联CSS。
在我看来,如果不使用内联css就无法设置特定行的笔触属性...
我想念什么吗?
create-table ×1
css ×1
d3.js ×1
line ×1
lookahead ×1
lookbehind ×1
postgresql ×1
python ×1
regex ×1
sql ×1
sql-insert ×1
styles ×1
svg ×1
whitespace ×1