我目前正在开发一个网站,其中包含了一个过滤器,它试图模糊它所服务的网页中存在的任何电子邮件地址.
就像现在一样,它将地址转换为图像.
我还看到了其他一些使用方法; 有些人将地址拆分成字符并使用生成的javascript将其包含在最终文档中,但这需要javascript,所以在我看来这并不是很有用.好处是它可以用来创建一个工作的mailto-link.
另一种与上述方法非常相似的方法使用hex-notation标记电子邮件地址.我不相信它会阻止任何严肃的收割者.
其他人利用人脑的能力来理解语言,并用文字代替@ -symbol等字符,或者将主机和用户名等分开.
我现在的问题是,当我没有对图像中的文本使用任何失真时,我的方法是多么可靠,使用生成的图像(其文件名不会给出地址)对付刮刀?我应该选择不同的方法吗?
并且作为一个延续:如果我不是一个后备方法,以防万一由于某种原因图像创建失败,这将是最聪明的方法?
我需要通过python编辑配置文件,我尝试在stackoverflow和google上搜索,但它们不能覆盖我的情况,因为我需要替换文件中的行并在搜索中执行匹配.
另外,我发现的内容涵盖如何为一行做,我将在文件中执行至少8行替换,我想知道是否有更干净,更优雅的方式这样做比放10替换(foo) ,bar)线条.
我需要"匹配"像"ENABLEPRINTER","PRINTERLIST","PRNT1.PORT"这样的行.我想匹配这些文本并忽略后面的内容(例如:"= PRNT1,PRNT2").
所以我会做类似的事情
replace('ENABLEPRINTER', 'y')
replace('PRINTERLIST', 'PRNT3)
Run Code Online (Sandbox Code Playgroud)
该文件如下所示:
ENABLEPRINTER=n
PRINTERLIST=PRNT1, PRNT2
PRNT1.PORT=9600
PRNT1.BITS=8
Run Code Online (Sandbox Code Playgroud)
另请注意,这些文件大约有100行,我需要编辑大约10行.
非常感谢您的帮助.
更新:
使用@JF Sebastian发布的代码,我现在收到以下错误:
configobj.ParseError: Parse error in value at line 611.
Run Code Online (Sandbox Code Playgroud)
该文件的第611行是:
log4j.appender.dailyRollingFile.DatePattern='.'yyyy-MM-d
Run Code Online (Sandbox Code Playgroud)
所以问题在于'性格'.
如果我注释掉那一行,脚本就可以正常使用@JF Sebastian发布的代码了.
python file-io configuration-files text-manipulation python-3.x
在一个文本文件中,我有150个单词.我有另一个文本文件,大约有100,000行.
如何检查属于第一个文件的每个单词是否在第二个文件中?
我想过使用grep,但我无法找到如何用它来阅读原文中的每个单词.
有什么方法可以使用awk吗?或另一种解决方案
我试过这个shell脚本,但它几乎匹配每一行:
#!/usr/bin/env sh
cat words.txt | while read line; do
if grep -F "$FILENAME" text.txt
then
echo "Se encontró $line"
fi
done
Run Code Online (Sandbox Code Playgroud)
我发现的另一种方式是:
fgrep -w -o -f "words.txt" "text.txt"
Run Code Online (Sandbox Code Playgroud) 我试图在特定行之前插入几行文本,但在尝试添加新行字符时不断出现sed错误.我的命令看起来像:
sed -r -i '/Line to insert after/ i Line one to insert \\
second new line to insert \\
third new line to insert' /etc/directory/somefile.txt
Run Code Online (Sandbox Code Playgroud)
报告的错误是:
sed: -e expression #1, char 77: unterminated `s' command
Run Code Online (Sandbox Code Playgroud)
我试过,使用\n,\\(如上例),无字可言,只是移动第二行到下一行.我也尝试过类似的东西:
sed -r -i -e '/Line to insert after/ i Line one to insert'
-e 'second new line to insert'
-e 'third new line to insert' /etc/directory/somefile.txt
Run Code Online (Sandbox Code Playgroud)
编辑!:道歉,我希望文本在现有之前插入,而不是之后!
我有一个长字符串(多个段落),我需要将其拆分为一个行字符串列表.确定"线"的基础是:
我知道我可以在算法上做到这一点,但我想知道python是否有能够处理这种情况的东西.它基本上是自动换行字符串.
顺便说一句,输出行必须在字边界上而不是字符边界上打破.
这是输入和输出的示例:
输入:
"Within eight hours of Wilson's outburst, his Democratic opponent, former-Marine Rob Miller, had received nearly 3,000 individual contributions raising approximately $100,000, the Democratic Congressional Campaign Committee said.
Wilson, a conservative Republican who promotes a strong national defense and reining in the size of government, won a special election to the House in 2001, succeeding the late Rep. Floyd Spence, R-S.C. Wilson had worked on Spence's staff on Capitol Hill and also had served …Run Code Online (Sandbox Code Playgroud) 我想使用java API为特定句子创建感叹词?
这令人惊讶==不是很令人惊讶!
好吧很冷= =不是很冷!
如果您给出一个句子(即上例中的左侧),是否有任何供应商或工具可以帮助您生成感叹号.注意:句子将由用户提供,我们应该能够得到正确的句子.
我不确定,如果需要在其他类别下标记
EDIT1
还有一些例子,我希望这个例子尽可能通用
他们迟到了==他们不迟到!
他看起来很累==他看起来不累吗!
例如那个孩子很脏==这个孩子不是很脏!
好吧很热= =不热吗!
如何从Linux上的文本日志中获取最新的100MB?有没有它的工具,或者你能指出我的脚本吗?
我没有Shell Scripting,Perl或Python的编程经验,我不想安装单声道,所以我可以用C#编写它.
谢谢!!
Yvan Janssens
我有一个程序,你可以在其中输入一个字符串.但我希望删除引号""之间的文字.
例:
在:今天是一个非常"美好"和炎热的一天.
out:今天是一个非常"热"的日子.
Console.WriteLine("Enter text: ");
text = Console.ReadLine();
int letter;
string s = null;
string s2 = null;
for (s = 0; s < text.Length; letter++)
{
if (text[letter] != '"')
{
s = s + text[letter];
}
else if (text[letter] == '"')
{
s2 = s2 + letter;
letter++;
(text[letter] != '"')
{
s2 = s2 + letter;
letter++;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何在引号之间没有文本的情况下将字符串写入控制台.我不允许使用像正则表达式这样的复杂方法.
我的数据库中有一个编码的字段.在字段上使用from_base64之后,它看起来像这样:
<string>//<string>//<string>/2017//06//21//<string>//file.txt
Run Code Online (Sandbox Code Playgroud)
在路径的开头可能存在未确定数量的字符串,但是,日期(YYYY // MM // DD)将始终具有右侧的两个字段(字符串后跟文件扩展名).
我想按此YYYY // MM // DD模式排序,并计算具有此日期的所有路径的计数.
所以基本上我想这样做:
select '<YYYY//MM//DD portion of decoded_path>', count(*) from table group by '<YYYY//MM//DD portion of decoded_path>' order by '<YYYY//MM//DD portion of decoded_path>';
Run Code Online (Sandbox Code Playgroud) 我有一个包含序列数据的文件,其中每个新段落(由两个空行分隔)包含一个新序列:
#example
ASDHJDJJDMFFMF
AKAKJSJSJSL---
SMSM-....SKSKK
....SK
SKJHDDSNLDJSCC
AK..SJSJSL--HG
AHSM---..SKSKK
-.-GHH
Run Code Online (Sandbox Code Playgroud)
我想得到一个文件看起来像:
ASDHJDJJDMFFMFAKAKJSJSJSL---SMSM-....SKSKK....SK
SKJHDDSNLDJSCCAK..SJSJSL--HGAHSM---..SKSKK-.-GHH
Run Code Online (Sandbox Code Playgroud)
每个序列长度相同(如果有帮助的话).
我也希望在存储在不同directiories中的多个文件上执行此操作.
我刚刚尝试过
sed -e '/./{H;$!d;}' -e 'x;/regex/!d' ./text.txt
Run Code Online (Sandbox Code Playgroud)
但是这只是删除了整个文件:S
任何帮助都会受到赞赏 - 不必是sed,如果你知道如何在perl或其他东西中做到那么那也很棒.
谢谢.