2016-12-26 82 views
1

有沒有人得到關於代詞替代的建議?我想讓用戶很容易使用form%關鍵字%來替換php str_replace數組。但英語很難。代詞替補

例子:

$input='%his% house is %his%, and you can visit %him% there.'; 
$from[]='%his%';$from[]='%him%'; 
if($gender=='male'){ 
    $to[]='his';$to[]='him'; 
} 
else{ 
    to[]='hers';$to[]='her'; 
} 
echo str_replace($from, $to, $input); 

輸出:

他的房子是他的,你可以訪問他有< < = OK!

她的房子是她的,你可以訪問她那裏< < == SUCKS !!

例2:

$input='%her% house is %hers%, and you can visit %her% there.'; 
$from[]='%hers%';$from[]='%her%'; 
if($gender=='male'){ 
    $to[]='his';$to[]='him'; 
} 
else{ 
    to[]='hers';$to[]='her'; 
} 
echo str_replace($from, $to, $input); 

輸出:

他的房子是他的,你可以訪問他有< < = SUCKS!

她的房子是她的,你可以訪問她那裏< < == OK !!

有時我討厭英語。 關於如何管理這個的任何想法?

FYI,this answer會產生相同的錯誤輸出。

回答

0

在進一步審查相應的圖標,我想我已經找到了一個更簡單的方法,將滿足所有的情況,並相當用戶很容易理解。 我將使用關鍵字第三人稱複數

  • 他們>他/她
  • 他們>他/她
  • 他們>他/她
  • 他們>他/她

謝謝你幫助我通過Jerry和Markus AO來思考這個問題。

2

您的佔位符還需要記錄代詞的變化:主格,所有格,所有格等等。英語仍然存在變化的少數幾個地方之一是代詞,而'誰'和'誰'在出路。

不幸的是,即使在日常講話中(即「我」和「我」一直都在切換),英語人士確實不擅長規則的正確使用,並且(至少在美國)並沒有真正教授不同案件的正式名稱。 ( 「所有格?」)。因此,想出一種對用戶來說很容易的方式將是非常具有挑戰性的。

我推薦使用​​作爲佔位符,並且可能的替換可能類似於$third['male']['possessive'] = 'his',$third['female']['possessive'] = 'her',以允許$first['possessive'] = 'my'

+0

謝謝...我同意這是最可行的解決方案,但PITA爲我的用戶羣的東西。我想我會保留含糊不清的%%和%her,這在大多數情況下都會令人滿意,%佔有率%和%object%作爲用戶可以在需要時輸入的選項。幸運的是,我只提供第三人稱單數條目。我會等待Google AI找出如何爲她/她做上下文評估。這比我的智力允許的更大。 –

+0

感謝Jerry和Markus AO,他們提供了類似的答案和解決方案。看起來我只能「檢查」一個答案,所以我翻了一個硬幣,並檢查了傑裏的答案。因爲這是第二個答案,所以我希望有一個可憐的靈魂在同一個問題上可能會更受鼓舞,一路讀完,並從這兩個答案中獲得情報。 –

+0

當然,硬幣總是公平的。它不應該是超硬(即「涉足了幾個全工作日」)拿出,試圖扣除環境適當的拐點,並得到正確的大部分時間一個基本的背景檢查.. 。標記爲非常下雨天。直到那時。^_^ –

1

您必須映射一大堆可能的語調和配套使用佔位符: English Personal Pronouns 在這種情況下,即使單獨用第三人稱代詞,有一些重疊處理(即對象和相關的佔有慾之間,等等。)。對於樣品陣列覆蓋所有情況/形式:

$pronouns['3rd']['male'] = [ 
    'subj' => 'he', 
    'obj' => 'him', 
    'poss' => 'his', 
    'poss_ind' => 'his', 
    'refl' => 'himself', 
]; 

$pronouns['3rd']['female'] = [ 
    'subj' => 'she', 
    'obj' => 'her', 
    'poss' => 'her', 
    'poss_ind' => 'hers', 
    'refl' => 'herself', 
]; 

然後標記佔位符%obj%%poss%,或與完整形式%object%等,如果你寧願有。或%3rd:obj%等,如果你需要處理模板中的所有人。但考慮到重疊,如果你想得到這個正確的答案,那麼這裏就不可能有全面的語法。

在教育你的用戶關於獨立/獨立物主代詞之間的區別時,祝你好運,但除此之外,你必須提出一個語義分析算法,從上下文中減去適當的變化。你可以精心在一起的點擊添加標籤界面與說明依賴/獨立所有格等:)

+0

下面這個答案和傑裏的答案用更多的證據重申了我最初的想法,即用簡單的他/她的類型關鍵字不容易解決問題。請看我對傑瑞回答的回覆,我承認幫助和我的計劃。 –