WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Wort in Zeichenkette austauschen

 

Unwissende

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.12.2010, 15:22     Titel: Wort in Zeichenkette austauschen
  Antworten mit Zitat      
Hallo,

ich muss folgende Aufgabe in Matlab lösen und komme absolut nicht weiter:

Erstellen Sie eine Funktion stringchange, die ein Wort in einer Zeichenkette
austauschen soll:
stringchange(‘Is is our house‘) -> ‘It is my house’
Stringchange(string) bekommt als Argument eine Zeichenkette und tauscht das Wort ‚our‘, wenn es im Eingabetext enthalten ist, gegen ‚my‘ aus. Diese Funktion können Sie nun selber programmieren. Hinweis: Benutzen Sie die Matlab Hilfe (F1 oder Menüeintrag Help->Matlab Help) und suchen Sie dort unter Index nach String.
Sehen Sie sich die Einträge searching and replacing und searching for an. Dort finden Sie die beiden Befehle, die Sie für Ihre Funktion benötigen. Wenn das auszutauschende Wort nicht in der Zeichenkette vorhanden ist, geben Sie bitte den folgenden Text aus: „Wort XXXXX ist nicht in der Zeichenkette enthalten“. XXXXX ist das auszutauschende Wort.


Mein Ansatz ist folgender:

Code:

function stringchange ,  char ('Is is our house');
str='It is our house';
rep = 'our';
if  strrep(str, 'our','my')
disp(strrep(str, 'our','my'))
else strfind (str, 'our')
 disp(['Wort ' ' ' num2str(rep) ' ist nicht in der Zeichenkette enthalten.' ' '  num2str(rep) ' ' 'ist das auszutauschende Wort']);  
end
 


Es wäre ganz toll, wenn mir jmd. helfen könnte.

Lg,

Unwissende


_Peter_

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.12.2010, 13:31     Titel:
  Antworten mit Zitat      
Hallo,
Du machst einige grundliegende Fehler.

Zitat:
Stringchange(string) bekommt als Argument eine Zeichenkette


Hier steht wie du den Funktionsaufruf erstellen sollst.
in diesem Fall heißt die Funktion "Stringchange" und das Argument ist "string"
Dies solltest du auch direkt in deinem Code zu einbauen. Bzw. dir erstmal drüber klarwerden was ein Argument ist und was eine Funktion macht.

Code:

function Stringchange(string)
...
end
 


Das wäre der erste Schritt.

Weiterhin solltest du dir die Syntax der If-Funktion mal angucken.
Der Aufbau ist folgender:
Code:

if <Bedingung>
...
elseif <weitere Bedingung>
...
else
...
end

 


Das "else" bedeutet, dass für alle vorher NICHT genannten Bedingungen diese Codeabschnitt der danach folgt ausgeführt wird. Nach dem "else" darf also keine Bedingung stehen!

Dann ist mir noch folgendes aufgefallen:
du sagst
Zitat:

rep = 'our';

damit legst du fest dass rep eine Zeichenkette ist.

weiter unten schreibst du dann aber
Zitat:

num2str(rep)


die Funktion "num2str" wandelt eine Zahl in eine Zeichenkette um. "rep" ist aber keine Zahl sondern eine Zeichenkette, also brauchst du diese Umwandlung nicht.


Zu guter Letzt habe ich noch ein Verständnisproblem. Es ist festgelegt, dass nur das Wort "our" ausgetauscht wird oder? Warum wird dann unten in der meldung XXXXX verwendet wenn es feststeht? Oder ist es variabel?

Ich hoffe das Hilft dir erstmal wieter.

Gruß
Peter
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.