标签: text-manipulation

在html中混淆电子邮件

我目前正在开发一个网站,其中包含了一个过滤器,它试图模糊它所服务的网页中存在的任何电子邮件地址.

就像现在一样,它将地址转换为图像.

我还看到了其他一些使用方法; 有些人将地址拆分成字符并使用生成的javascript将其包含在最终文档中,但这需要javascript,所以在我看来这并不是很有用.好处是它可以用来创建一个工作的mailto-link.

另一种与上述方法非常相似的方法使用hex-notation标记电子邮件地址.我不相信它会阻止任何严肃的收割者.

其他人利用人脑的能力来理解语言,并用文字代替@ -symbol等字符,或者将主机和用户名等分开.

我现在的问题是,当我没有对图像中的文本使用任何失真时,我的方法是多么可靠,使用生成的图像(其文件名不会给出地址)对付刮刀?我应该选择不同的方法吗?

并且作为一个延续:如果我不是一个后备方法,以防万一由于某种原因图像创建失败,这将是最聪明的方法?

obfuscation spam-prevention text-manipulation

8
推荐指数
1
解决办法
829
查看次数

通过python编辑配置文件

我需要通过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

8
推荐指数
2
解决办法
1万
查看次数

如何从另一个文件中的一个文件中查找单词?

在一个文本文件中,我有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)

linux shell awk grep text-manipulation

8
推荐指数
1
解决办法
9204
查看次数

使用Bash在特定行之前插入多行文本

我试图在特定行之前插入几行文本,但在尝试添加新行字符时不断出现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)

编辑!:道歉,我希望文本在现有之前插入,而不是之后!

unix bash sed text-manipulation

7
推荐指数
2
解决办法
2万
查看次数

将没有换行符的字符串拆分为具有最大列数的行列表

我有一个长字符串(多个段落),我需要将其拆分为一个行字符串列表.确定"线"的基础是:

  • 行中的字符数小于或等于X(其中X是每行的固定列数_)
  • 或者,原始字符串中有一个换行符(这将强制创建一个新的"行").

我知道我可以在算法上做到这一点,但我想知道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)

python text-manipulation

6
推荐指数
1
解决办法
2761
查看次数

如何为特定句子创建感叹词

我想使用java API为特定句子创建感叹词?

这令人惊讶==不是很令人惊讶!
好吧很冷= =不是很冷!

如果您给出一个句子(即上例中的左侧),是否有任何供应商或工具可以帮助您生成感叹号.注意:句子将由用户提供,我们应该能够得到正确的句子.

我不确定,如果需要在其他类别下标记

EDIT1

还有一些例子,我希望这个例子尽可能通用

他们迟到了==他们不迟到!
他看起来很累==他看起来不累吗!
例如那个孩子很脏==这个孩子不是很脏!
好吧很热= =不热吗!

java regex nlp text-manipulation

6
推荐指数
2
解决办法
461
查看次数

在linux中获取最新的100MB文本文件

如何从Linux上的文本日志中获取最新的100MB?有没有它的工具,或者你能指出我的脚本吗?

我没有Shell Scripting,Perl或Python的编程经验,我不想安装单声道,所以我可以用C#编写它.

谢谢!!

Yvan Janssens

linux text text-manipulation

6
推荐指数
1
解决办法
1798
查看次数

删除引号之间的文本

我有一个程序,你可以在其中输入一个字符串.但我希望删除引号""之间的文字.

例:

在:今天是一个非常"美好"和炎热的一天.

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)

我不知道如何在引号之间没有文本的情况下将字符串写入控制台.我不允许使用像正则表达式这样的复杂方法.

c# string text-manipulation

6
推荐指数
2
解决办法
1593
查看次数

如何在MySQL中提取部分Base64编码的字符串?

我的数据库中有一个编码的字段.在字段上使用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)

mysql base64 substring text-manipulation string-function

6
推荐指数
1
解决办法
295
查看次数

将文件的所有单独段落放在单独的行中

我有一个包含序列数据的文件,其中每个新段落(由两个空行分隔)包含一个新序列:

#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或其他东西中做到那么那也很棒.

谢谢.

perl sed text-manipulation

5
推荐指数
1
解决办法
705
查看次数