DNSBLチェッカー開発の際、人工知能・AIで、2次元配列を生成させる

プログラミングの人工知能の補助の現況

 プログラミング、開発者にとって、コードを書く事は仕事です。
今では、日本語の予測変換の様に、IF文や条件式の予測変換も出来るそうです。
私も近々、有料のプログラミングツール「PhpStorm」を有償契約して、人工知能を活用した効率的なプログラミング環境を準備しようと思っています。

2次元配列の生成を人工知能・AIに実行させる「バランスよく」

DNSBL2次元配列リスト_Bard_よりバランスよく1
 今は、TeraPadでテキスト入力で、PHPなどのプログラミングを行っています。
10年以上前から存在するTeraPadですが、色分けしてくれるため、非常に見やすいです。
今回、DNSBLチェッカーのDNBBL(ドメインネームシステムのブラックリスト:Domain Name System Black List)の一覧を作るのに、AIを活用しました。
2次元配列を手入力や、TeraPadや秀丸などのエディタで、整形するのは、比較的簡単です。
とは言え、きれいに成形するのは、若干骨の折れる作業です。
特に配列の数が多いと、「,」が抜けて、Syntaxエラー(構文がおかしい)となる事が多々あります。

 今回、下記内容をEdgeのBardで、「バランスよく」で指示しました。
42行の配列リストに対して、42行の2次元配列が生成されています。

下記リストをPHPの2次元配列のコードを書いてください。

0spam URLBL Listings (mirror)   0spamurl.fusionzero.com
abuse.ch ZeuS Tracker Domain    uribl.zeustracker.abuse.ch
abuse.ro URI RBL    uribl.abuse.ro
Abusix Mail Intelligence Domain Blacklist   (hidden)
Blog Spam Blocklist (empty.us)  bsb.empty.us
Blog Spam Blocklist (spamlookup.net)    bsb.spamlookup.net
Brukalai.lt DNSBL black black.dnsbl.brukalai.lt
Brukalai.lt DNSBL light light.dnsbl.brukalai.lt
fmb.la bl   bl.fmb.la
fmb.la communicado  communicado.fmb.la
fmb.la nsbl nsbl.fmb.la
fmb.la short    short.fmb.la
Hostkarma blacklist black.junkemailfilter.com
nvaluement DNSBL ivmSED (hidden)
invaluement DNSBL ivmURI    (hidden)
MailCleaner Newsletter URI list nuribl.mailcleaner.net
MailCleaner SPAM URI Blacklist  uribl.mailcleaner.net
NordSpam Domain Blacklist   dbl.nordspam.com
nsZones.com SURBL   ubl.nszones.com
pofon.foobar.hu URI Blacklist   uribl.pofon.foobar.hu
Polspam RHSBL   rhsbl.rbl.polspam.pl
Polspam RHSBL-H rhsbl-h.rbl.polspam.pl
RFC-Clueless (RFC2) abuse RBL   abuse.rfc-clueless.org
RFC-Clueless (RFC2) BogusMX RBL bogusmx.rfc-clueless.org
RFC-Clueless (RFC2) DSN RBL dsn.rfc-clueless.org
RFC-Clueless (RFC2) Elitist RBL elitist.rfc-clueless.org
RFC-Clueless (RFC2) Metalist RBL    fulldom.rfc-clueless.org
RFC-Clueless (RFC2) postmaster RBL  postmaster.rfc-clueless.org
rjek.com mailsl DNSBL   mailsl.dnsbl.rjek.com
rjek.com urlsl DNSBL    urlsl.dnsbl.rjek.com
Rspamd URIBL    uribl.rspamd.com
Rymsho's RHSBL rhsbl.rymsho.ru
SARBL   public.sarbl.org
scientificspam.net Domain list  rhsbl.scientificspam.net
SORBS Domain names indicating no email sender   nomail.rhsbl.sorbs.net
SORBS Domain names pointing to bad addresses    badconf.rhsbl.sorbs.net
SORBS RHS Aggregate zone    rhsbl.sorbs.net
Spam Eating Monkey SEM-FRESH    fresh.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH10  fresh10.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH15  fresh15.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH30  fresh30.spameatingmonkey.net
Spam Eating Monkey SEM-FRESHZERO    freshzero.spameatingmonkey.net

人工知能の応答内容「バランスよく」1

DNSBL2次元配列リスト_Bard_よりバランスよく2_

人工知能の応答内容「バランスよく」2

DNSBL2次元配列リスト_Bard_よりバランスよく3

人工知能の応答内容コード「バランスよく」

 コードを締めくくる「)」が記述されていないと言う問題があります。
そのくらいならば、人間が補佐してやれば十分ですね。

$list = array(
    array("0spam URLBL Listings (mirror)", "0spamurl.fusionzero.com"),
    array("abuse.ch ZeuS Tracker Domain", "uribl.zeustracker.abuse.ch"),
    array("abuse.ro URI RBL", "uribl.abuse.ro"),
    array("Abusix Mail Intelligence Domain Blacklist", "(hidden)"),
    array("Blog Spam Blocklist (empty.us)", "bsb.empty.us"),
    array("Blog Spam Blocklist (spamlookup.net)", "bsb.spamlookup.net"),
    array("Brukalai.lt DNSBL black", "black.dnsbl.brukalai.lt"),
    array("Brukalai.lt DNSBL light", "light.dnsbl.brukalai.lt"),
    array("fmb.la bl", "bl.fmb.la"),
    array("fmb.la communicado", "communicado.fmb.la"),
    array("fmb.la nsbl", "nsbl.fmb.la"),
    array("fmb.la short", "short.fmb.la"),
    array("Hostkarma blacklist", "black.junkemailfilter.com"),
    array("nvaluement DNSBL ivmSED", "(hidden)"),
    array("invaluement DNSBL ivmURI", "(hidden)"),
    array("MailCleaner Newsletter URI list", "nuribl.mailcleaner.net"),
    array("MailCleaner SPAM URI Blacklist", "uribl.mailcleaner.net"),
    array("NordSpam Domain Blacklist", "dbl.nordspam.com"),
    array("nsZones.com SURBL", "ubl.nszones.com"),
    array("pofon.foobar.hu URI Blacklist", "uribl.pofon.foobar.hu"),
    array("Polspam RHSBL", "rhsbl.rbl.polspam.pl"),
    array("Polspam RHSBL-H", "rhsbl-h.rbl.polspam.pl"),
    array("RFC-Clueless (RFC2) abuse RBL", "abuse.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) BogusMX RBL", "bogusmx.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) DSN RBL", "dsn.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) Elitist RBL", "elitist.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) Metalist RBL", "fulldom.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) postmaster RBL", "postmaster.rfc-clueless.org"),
    array("rjek.com mailsl DNSBL", "mailsl.dnsbl.rjek.com"),
    array("rjek.com urlsl DNSBL", "urlsl.dnsbl.rjek.com"),
    array("Rspamd URIBL", "uribl.rspamd.com"),
    array("Rymsho's RHSBL", "rhsbl.rymsho.ru"),
    array("SARBL","public.sarbl.org" ),
    array(  "scientificspam.net Domain list","rhsbl.scientificspam.net" ),
    array(  "SORBS Domain names indicating no email sender","nomail.rhsbl.sorbs.net" ),
    array(  "SORBS Domain names pointing to bad addresses","badconf.rhsbl.sorbs.net" ),
    array(  "SORBS RHS Aggregate zone","rhsbl.sorbs.net" ),
    array(  "Spam Eating Monkey SEM-FRESH","fresh.spameatingmonkey.net" ),
    array(  "Spam Eating Monkey SEM-FRESH10","fresh10.spameatingmonkey.net" ),
    array(  "Spam Eating Monkey SEM-FRESH15","fresh15.spameatingmonkey.net" ),
    array(  "Spam Eating Monkey SEM-FRESH30","fresh30.spameatingmonkey.net" ),
    array(  "Spam Eating Monkey SEM-FRESHZERO","freshzero.spameatingmonkey.net" )

2次元配列の生成を人工知能・AIに実行させる「より厳密に」

DNSBL2次元配列リスト_Bard_より厳密に1
 次に、同じ指示内容を「より厳密に」に設定し、実行しました。

下記リストをPHPの2次元配列のコードを書いてください。

0spam URLBL Listings (mirror)   0spamurl.fusionzero.com
abuse.ch ZeuS Tracker Domain    uribl.zeustracker.abuse.ch
abuse.ro URI RBL    uribl.abuse.ro
Abusix Mail Intelligence Domain Blacklist   (hidden)
Blog Spam Blocklist (empty.us)  bsb.empty.us
Blog Spam Blocklist (spamlookup.net)    bsb.spamlookup.net
Brukalai.lt DNSBL black black.dnsbl.brukalai.lt
Brukalai.lt DNSBL light light.dnsbl.brukalai.lt
fmb.la bl   bl.fmb.la
fmb.la communicado  communicado.fmb.la
fmb.la nsbl nsbl.fmb.la
fmb.la short    short.fmb.la
Hostkarma blacklist black.junkemailfilter.com
nvaluement DNSBL ivmSED (hidden)
invaluement DNSBL ivmURI    (hidden)
MailCleaner Newsletter URI list nuribl.mailcleaner.net
MailCleaner SPAM URI Blacklist  uribl.mailcleaner.net
NordSpam Domain Blacklist   dbl.nordspam.com
nsZones.com SURBL   ubl.nszones.com
pofon.foobar.hu URI Blacklist   uribl.pofon.foobar.hu
Polspam RHSBL   rhsbl.rbl.polspam.pl
Polspam RHSBL-H rhsbl-h.rbl.polspam.pl
RFC-Clueless (RFC2) abuse RBL   abuse.rfc-clueless.org
RFC-Clueless (RFC2) BogusMX RBL bogusmx.rfc-clueless.org
RFC-Clueless (RFC2) DSN RBL dsn.rfc-clueless.org
RFC-Clueless (RFC2) Elitist RBL elitist.rfc-clueless.org
RFC-Clueless (RFC2) Metalist RBL    fulldom.rfc-clueless.org
RFC-Clueless (RFC2) postmaster RBL  postmaster.rfc-clueless.org
rjek.com mailsl DNSBL   mailsl.dnsbl.rjek.com
rjek.com urlsl DNSBL    urlsl.dnsbl.rjek.com
Rspamd URIBL    uribl.rspamd.com
Rymsho's RHSBL rhsbl.rymsho.ru
SARBL   public.sarbl.org
scientificspam.net Domain list  rhsbl.scientificspam.net
SORBS Domain names indicating no email sender   nomail.rhsbl.sorbs.net
SORBS Domain names pointing to bad addresses    badconf.rhsbl.sorbs.net
SORBS RHS Aggregate zone    rhsbl.sorbs.net
Spam Eating Monkey SEM-FRESH    fresh.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH10  fresh10.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH15  fresh15.spameatingmonkey.net
Spam Eating Monkey SEM-FRESH30  fresh30.spameatingmonkey.net
Spam Eating Monkey SEM-FRESHZERO    freshzero.spameatingmonkey.net
Spam Eating Monkey SEM-URI  uribl.spameatingmonkey.net
Spam Eating Monkey SEM-URIRED   urired.spameatingmonkey.net
Spamhaus DBL Domain Block List  dbl.spamhaus.org
SPFBL.net RBL   dnsbl.spfbl.net
Suomispam Domain Blacklist  dbl.suomispam.net
SURBL multi (Combined SURBL list)   multi.surbl.org
Swinog URIBL    uribl.swinog.ch
The Day Old Bread List (aka DOB)    dob.sibl.support-intelligence.net
URIBL black black.uribl.com
URIBL grey  grey.uribl.com
URIBL multi multi.uribl.com
URIBL red   red.uribl.com
Woody's SMTP Blacklist URIBL   uri.blacklist.woody.ch
ZapBL RHSBL rhsbl.zapbl.net
ZenRBL Domain Blocklist d.bl.zenrbl.pl

人工知能の応答内容「より厳密に」1

DNSBL2次元配列リスト_Bard_より厳密に2

人工知能の応答内容「より厳密に」2

DNSBL2次元配列リスト_Bard_より厳密に3

人工知能の応答内容コード「バランスよく」

 全ての行数の配列の応答がありませんでした。
変数名も「$list」から「$array」に変わっています。
57行の配列リストに対して、35行の2次元配列が生成されています。
最後は「…」で終わっています。
まだまだ、人工知能に全面的に頼るのは危険ですが、時間短縮に活用は出来ます。

$array = array(
    array("0spam URLBL Listings (mirror)", "0spamurl.fusionzero.com"),
    array("abuse.ch ZeuS Tracker Domain", "uribl.zeustracker.abuse.ch"),
    array("abuse.ro URI RBL", "uribl.abuse.ro"),
    array("Abusix Mail Intelligence Domain Blacklist", "(hidden)"),
    array("Blog Spam Blocklist (empty.us)", "bsb.empty.us"),
    array("Blog Spam Blocklist (spamlookup.net)", "bsb.spamlookup.net"),
    array("Brukalai.lt DNSBL black", "black.dnsbl.brukalai.lt"),
    array("Brukalai.lt DNSBL light", "light.dnsbl.brukalai.lt"),
    array("fmb.la bl", "bl.fmb.la"),
    array("fmb.la communicado", "communicado.fmb.la"),
    array("fmb.la nsbl", "nsbl.fmb.la"),
    array("fmb.la short", "short.fmb.la"),
    array("Hostkarma blacklist", "black.junkemailfilter.com"),
    array("nvaluement DNSBL ivmSED", "(hidden)"),
    array("invaluement DNSBL ivmURI", "(hidden)"),
    array("MailCleaner Newsletter URI list", "nuribl.mailcleaner.net"),
    array("MailCleaner SPAM URI Blacklist", "uribl.mailcleaner.net"),
    array("NordSpam Domain Blacklist", "dbl.nordspam.com"),
    array("nsZones.com SURBL", "ubl.nszones.com"),
    array("pofon.foobar.hu URI Blacklist", "uribl.pofon.foobar.hu"),
    array("Polspam RHSBL", "rhsbl.rbl.polspam.pl"),
    array("Polspam RHSBL-H", "rhsbl-h.rbl.polspam.pl"),
    array("RFC-Clueless (RFC2) abuse RBL", "abuse.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) BogusMX RBL", "bogusmx.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) DSN RBL", "dsn.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) Elitist RBL", "elitist.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) Metalist RBL", "fulldom.rfc-clueless.org"),
    array("RFC-Clueless (RFC2) postmaster RBL", "postmaster.rfc-clueless.org"),
    array("rjek.com mailsl DNSBL", "mailsl.dnsbl.rjek.com"),
    array("rjek.com urlsl DNSBL", "urlsl.dnsbl.rjek.com"),
    array("Rspamd URIBL", "uribl.rspamd.com"),
    array("Rymsho's RHSBL", "rhsbl.rymsho.ru"),
    array("SARBL", "public.sarbl.org"),
    array("scientificspam.net Domain list", "rhsbl.scientificspam.net"),
    array("SORBS Domain names indicating no email sender","nomail.rhsbl.sorbs.net"), 
    ...
);