hi @ all
war schon lange nicht mehr hier....
ich habe ein problem ich möchte gerne einen highlighter bauen für ES Shell da die sprache ihre eigene syntax und ihre eigenen befehle hat. benötige ich was explizietes mit regexp´s habe jetzt schon einige variationen ausprobiert aber bin mir immernoch nicht ganz so klar wie die regexp´s funktionieren da ich
1. \n
2. "string"
3. leerzeichen
4. // Kommentare
5. Integer und floats
6. ()
splitten muss um das ganze zu highlighten
also als beispiel ES Shell sieht so aus:
Alles anzeigen
und so sollte es danach aussehen:
-----------------------------------------------------------------------------------------
// load funktion
block load
{
eventscripts_noisy 1
}
// unload funktion
block unload
{
eventscripts_noisy 0
}
// pickup a item
event item_pickup
{
es_delayed .3 es playerset ammo event_var(userid) weapon_awp 0
es_delayed .3 es playerset clip event_var(userid) weapon_awp 0
}
event player_spawn
{
es_tell server_var(xcn_cmduser_adminid) #multi #green[XCN-Modul] #defaultNo Admin!
es echo "New Admin server_var(neuer_admin_name) with Steamid server_var(neuer_admin_steamid) is added!"
}
-----------------------------------------------------------------------------------------
die richtigen und verfügbaren befehle stehen in arrays:
1. versuch mit preg_split
mein 2.versuch war mit explode solange auszusplitten bis es passt und es dann wieder zusammenzubauen aber das klappte überhauptnicht wie ich mir das vorgestellt hatte .....
ich hoffe ihr könnt mir helfen
also man benötigt z.b. ein gängiges array was sich dann einfach wieder zusammensetzen lässt ohne dass die einrückung dabei leidet....
war schon lange nicht mehr hier....
ich habe ein problem ich möchte gerne einen highlighter bauen für ES Shell da die sprache ihre eigene syntax und ihre eigenen befehle hat. benötige ich was explizietes mit regexp´s habe jetzt schon einige variationen ausprobiert aber bin mir immernoch nicht ganz so klar wie die regexp´s funktionieren da ich
1. \n
2. "string"
3. leerzeichen
4. // Kommentare
5. Integer und floats
6. ()
splitten muss um das ganze zu highlighten
also als beispiel ES Shell sieht so aus:
Quellcode
- // load funktion
- block load
- {
- eventscripts_noisy 1
- }
- // unload funktion
- block unload
- {
- eventscripts_noisy 0
- }
- // pickup a item
- event item_pickup
- {
- es_delayed .3 es playerset ammo event_var(userid) weapon_awp 0
- es_delayed .3 es playerset clip event_var(userid) weapon_awp 0
- }
- event player_spawn
- {
- es_tell server_var(xcn_cmduser_adminid) #multi #green[XCN-Modul] #defaultNo Admin!
- es echo "New Admin server_var(neuer_admin_name) with Steamid server_var(neuer_admin_steamid) is added!"
- }
und so sollte es danach aussehen:
-----------------------------------------------------------------------------------------
// load funktion
block load
{
eventscripts_noisy 1
}
// unload funktion
block unload
{
eventscripts_noisy 0
}
// pickup a item
event item_pickup
{
es_delayed .3 es playerset ammo event_var(userid) weapon_awp 0
es_delayed .3 es playerset clip event_var(userid) weapon_awp 0
}
event player_spawn
{
es_tell server_var(xcn_cmduser_adminid) #multi #green[XCN-Modul] #defaultNo Admin!
es echo "New Admin server_var(neuer_admin_name) with Steamid server_var(neuer_admin_steamid) is added!"
}
-----------------------------------------------------------------------------------------
die richtigen und verfügbaren befehle stehen in arrays:
Quellcode
- if(in_array($mycode, $eventscripts_db_reserved)) $mycode=str_replace($mycode, "<span style=\"color:#B30000\"><b>".$mycode."</b></span>", $mycode);
- if(in_array($mycode, $eventscripts_db_es)) $mycode=str_replace($mycode, "<span style=\"color:#000000\"><b>".$mycode."</b></span>", $mycode);
- if(in_array($mycode, $eventscripts_db_est)) $mycode=str_replace($mycode, "<span style=\"color:#008000\"><b>".$mycode."</b></span>", $mycode);
- if(in_array($mycode, $eventscripts_db_valve)) $mycode=str_replace($mycode, "<span style=\"color:#FF8000\"><b>".$mycode."</b></span>", $mycode);
- if(is_numeric($mycode)) $mycode=str_replace($mycode, "<span style=\"color:#000080\"><b>".$mycode."</b></span>", $mycode);
1. versuch mit preg_split
mein 2.versuch war mit explode solange auszusplitten bis es passt und es dann wieder zusammenzubauen aber das klappte überhauptnicht wie ich mir das vorgestellt hatte .....
ich hoffe ihr könnt mir helfen

also man benötigt z.b. ein gängiges array was sich dann einfach wieder zusammensetzen lässt ohne dass die einrückung dabei leidet....
Beste Grüße,
M4rc3L-XCN
M4rc3L-XCN