|
|
|
การเว้นบรรทัดเวลาตัดคำ จากไฟล์ .txt แสดงใน textarea |
|
|
|
|
|
|
|
เอาโค้ดมาลงดีกว่าครับ จะได้ช่วยกันแก้
|
|
|
|
|
Date :
2012-02-26 22:11:44 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
if(!$_POST["segment"])
{
echo '<html><center>
<form action="" method="post" enctype="multipart/form-data">
<textarea cols="150" rows="15"></textarea><br>
<input type="file" name="file" id="file">
<input type="submit" name="segment" value="segment">
</center></form></html>';
echo " <center>"."กรุณาเลือกไฟล์"; }
$filename = ($_FILES["file"]["name"]);
if(isset($_POST["segment"]))
{
copy($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);
{echo "<http://localhost/".$_FILES["file"]["name"]." >";}
if(copy($_FILES["file"]["tmp_name"],$_FILES["file"]["name"])==true)
{
$handle = fopen ($filename, "r");
$content = fread($handle, filesize ($filename));
fclose($handle);
if($content)
{echo "<center><textarea cols='150' rows='15'>$content</textarea>"."<br>";}
else{echo "no contents there";}
echo '<html><center>
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file">
<input type="submit" name="segment" value="segment">
</center></form></html>';
$str_segmented = wordSegmentation($content);
echo"<p>"."<center><textarea cols='150' rows='15'>$str_segmented</textarea>";
//***********************wordSegmentation***********************\\
}
}
function wordSegmentation($str_word)
{
$open = fopen("word.txt", 'w');
fwrite($open, $str_word);
fclose($open);
$exec = exec("swath.exe <word.txt> test.txt");
$filename = "test.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
$data=explode("\r\n", $contents);
for ($k=0; $k<count($data); $k++)
{
$final .= $data[$k]; //วนลูปเรียกดูทั้งหมด
}
return $final;
}
?>
|
|
|
|
|
Date :
2012-02-26 22:27:22 |
By :
kookkik |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$data=explode("\r\n", $contents);
ตรงบรรทัดนี้ ให้เปลี่ยนจาก "\r\n" เป็น "<br>" ลองดูครับ ผมก็มั่ว ๆ สุ่มนะ
|
|
|
|
|
Date :
2012-02-27 01:08:18 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วคะ ขอบคุนคะ ถ้าเราต้องการตัด เครื่องหมายหรือ ตัวเลขออก ก่อนนับคำ เขียนโค้ดยังไงคะ แนะนำที ขอบคุนคะ
|
|
|
|
|
Date :
2012-02-27 12:49:00 |
By :
kookkik |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sub_str() หรือ str_replace() ลองดูครับ
|
|
|
|
|
Date :
2012-02-27 21:38:41 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้แล้วคะ แต่ผลไม่ตรงตามต้องการ
คือดังนี้คะ
Code
//****************************cut tags****************************\\
$str_replace = array('<','space','>','#','%','//','[',']','_','P','\\','1','2','3','4','5','6','7','8','9','0','=','@','*','&','?','{','}','[',']','!','+','$','^',';','(',')','-',',','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$text = $str_segmented;
$text = str_replace($str_replace,'',$text);
echo"<br>******************Cut Tag******************";
echo"<p>"."<center><textarea cols='150' rows='15'>$text</textarea>";
echo '<html><center></html>';
$open = fopen("cache_content.txt", 'w');
fwrite($open, $text);
fclose($open);
ตัดคำแล้วได้ดังนี้ ต้องการกำจัด ตัวเลข และตัวอักษรที่ไม่จัดเป็นคำออก........
แป้ง|ที่|เกิด|จาก|น้ำตาล| |กลูโคส| |2,000| |โมเลกุล| |เชื่อมต่อ|กัน|ด้วย|พันธะ| |glycosidic| |จะ|มี|น้ำหนัก|โมเลกุล|เท่าไหร่| |
น้ำหนัก|โมเลกุล|ของ|แป้ง| |=| |1| |glycogen|=| |2| |และ| |เซลลูโลส| |=| |3| |โดย|ทั่วไป|เป็น|ไป|ตาม|ข้อ|ใด|
คน|ที่|ศึกษา|โรค| |anthrax|ใน|โค|และ|กระบือ|คือ|
ถ้า|พ่อ|เลือด|หมู่| |AB| |และ|แม่|เลือด|หมู่| |O| |ข้อความ|ต่อไปนี้|ข้อ|ใด|ถูก|
//****************************cut tags****************************\\ แล้ว กำจัดคำอังกฤษออกด้วย ต้องการให้เก็บคำไว้ทั้งหมด
แป้ง|ที่|เกิด|จาก|น้ำตาล| |กลูโคส| || |โมเลกุล| |เชื่อมต่อ|กัน|ด้วย|พันธะ| || |จะ|มี|น้ำหนัก|โมเลกุล|เท่าไหร่| |
น้ำหนัก|โมเลกุล|ของ|แป้ง| || || ||| || |และ| |เซลลูโลส| || || |โดย|ทั่วไป|เป็น|ไป|ตาม|ข้อ|ใด|
คน|ที่|ศึกษา|โรค| ||ใน|โค|และ|กระบือ|คือ|
ถ้า|พ่อ|เลือด|หมู่| || |และ|แม่|เลือด|หมู่| || |ข้อความ|ต่อไปนี้|ข้อ|ใด|ถูก|
|
|
|
|
|
Date :
2012-02-27 22:29:28 |
By :
kookkik |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมลองมาเปลี่ยนที่อยู่ไฟล์ swath ดู ซึง่ของผมเก็บไว้ที่ D:\Swath\swath.exe เลยเปลี่ยนที่ตั้งดู ปรากฎว่ามันไม่ยอมทำงานเลยครับ
Code (PHP)
function wordSegmentation($str_word)
{
$open = fopen("test.txt", 'w');
fwrite($open, $str_word);
fclose($open);
$exec = exec("D:\Swath\swath.exe <test.txt> out.txt");
$filename = "test.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
$data=explode("<br>", $contents);
for ($k=0; $k<count($data); $k++)
{
$final .= $data[$k]; //วนลูปเรียกดูทั้งหมด
}
return $final;
}
|
|
|
|
|
Date :
2013-01-11 17:04:25 |
By :
korner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของผมเปลี่ยนที่อยู่ไฟล์ของ swath เป็น D:\Swath\swath.exe มันไม่ยอมตัดคำให้เลยครับ
Code (PHP)
function wordSegmentation($str_word)
{
$open = fopen("test.txt", 'w');
fwrite($open, $str_word);
fclose($open);
$exec = exec("D:\Swath\swath.exe <test.txt> out.txt");
$filename = "test.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
$data=explode("<br>", $contents);
for ($k=0; $k<count($data); $k++)
{
$final .= $data[$k]; //วนลูปเรียกดูทั้งหมด
}
return $final;
}
|
|
|
|
|
Date :
2013-01-11 17:06:03 |
By :
korner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|