【发布时间】:2017-11-03 09:02:38
【问题描述】:
我之前尝试过问这个问题,但显然提供的细节太少,因此被关闭。让我更彻底地再试一次:
我需要做的是分离任何联合词,特别是在域名中。如果有域“domainname.com”,我需要返回“域”和“名称”。如果是“stackoverflow.com”,我需要返回“stack”和“overflow”。
我想我需要一个单词列表来执行此操作,这不是问题。请记住,可以通过多种方式分隔某些联合词(“stackoverflow.com”可以返回为“stack”和“overflow”或“stack”、“over”和“flow”),我来了有了这个php函数,但它需要改进。
function make_words_capitalised( $str )
{
// Full list of words
$words = array( 'you', 'tube', 'my', 'space' );
// Capitalize separate words
foreach( $words as $word )
{
$str = str_ireplace( $word, ucfirst($word), $str );
}
return $str;
}
var_dump( make_words_capitalised('youtube.com') );
var_dump( make_words_capitalised('myspace.com') );
非常感谢任何和所有想法。
【问题讨论】:
-
我看到的第一个问题是当您的域名包含列表词时会发生什么,即
yoursitespace.com。使用上述方法会搞砸。我建议使用一个包含域名作为指向字符串的键的数组。即array('youtube.com' => array('YOU TUBE'))。这样做需要更多的配置,但比更改单词要好得多 -
单词是严格意义上的字母吗?
标签: php dictionary dns